Testing out the PPD42 Air Quality Sensor, with an MSP430 Launchpad and graphing the data with GNUplot.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

42968 lines
1.0 MiB

<!DOCTYPE html>
<html>
<head>
<link rel="icon" type="image/vnd.microsoft.icon" href="http://www.gstatic.com/codesite/ph/images/phosting.ico">
<script type="text/javascript">
(function(){function a(e){this.t={};this.tick=function(f,c,d){c=d!=undefined?d:(new Date).getTime();this.t[f]=c};this.tick("start",null,e)}var b=new a;window.jstiming={Timer:a,load:b};try{var g=null;if(window.chrome&&window.chrome.csi)g=Math.floor(window.chrome.csi().pageT);if(g==null)if(window.gtbExternal)g=window.gtbExternal.pageT();if(g==null)if(window.external)g=window.external.pageT;if(g)window.jstiming.pt=g}catch(h){};})();
var codesite_token = "c6974bcd72eb95455827185f7306e1fa";
var logged_in_user_email = "Dung.Dang@gmail.com";
var relative_base_url = "";
</script>
<title>PGraphics.java -
processing -
Project Hosting on Google Code</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
<meta name="ROBOTS" content="NOARCHIVE">
<link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/10276742928614796628/css/ph_core.css">
<link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/10276742928614796628/css/ph_detail.css" >
<link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/10276742928614796628/css/d_sb_20080522.css" >
<!--[if IE]>
<link type="text/css" rel="stylesheet" href="http://www.gstatic.com/codesite/ph/10276742928614796628/css/d_ie.css" >
<![endif]-->
<style type="text/css">
.menuIcon.off { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -42px }
.menuIcon.on { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 -28px }
.menuIcon.down { background: no-repeat url(http://www.gstatic.com/codesite/ph/images/dropdown_sprite.gif) 0 0; }
tr.inline_comment {
background: #fff;
vertical-align: top;
}
div.draft, div.published {
padding: .3em;
border: 1px solid #999;
margin-bottom: .1em;
font-family: arial, sans-serif;
max-width: 60em;
}
div.draft {
background: #ffa;
}
div.published {
background: #e5ecf9;
}
div.published .body, div.draft .body {
padding: .5em .1em .1em .1em;
max-width: 60em;
white-space: pre-wrap;
white-space: -moz-pre-wrap;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
word-wrap: break-word;
font-size: 1em;
}
div.draft .actions {
margin-left: 1em;
font-size: 90%;
}
div.draft form {
padding: .5em .5em .5em 0;
}
div.draft textarea, div.published textarea {
width: 95%;
height: 10em;
font-family: arial, sans-serif;
margin-bottom: .5em;
}
.nocursor, .nocursor td, .cursor_hidden, .cursor_hidden td {
background-color: white;
height: 2px;
}
.cursor, .cursor td {
background-color: darkblue;
height: 2px;
display: '';
}
.list {
border: 1px solid white;
margin-bottom:0;
}
</style>
</head>
<body class="t4">
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(
['siteTracker._setAccount', 'UA-18071-1'],
['siteTracker._trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(ga);
})();
</script>
<div class="headbg">
<div id="gaia">
<span>
<b>Dung.Dang@gmail.com</b>
| <a href="/u/@VhVRRVJYBRNNWwl6/" id="projects-dropdown" onclick="return false;"
><u>My favorites</u> <small>&#9660;</small></a>
| <a href="/u/@VhVRRVJYBRNNWwl6/" onclick="_CS_click('/gb/ph/profile');"
title="Profile, Updates, and Settings"
><u>Profile</u></a>
| <a href="https://www.google.com/accounts/Logout?continue=http%3A%2F%2Fcode.google.com%2Fp%2Fprocessing%2Fsource%2Fbrowse%2Ftrunk%2Fprocessing%2Fcore%2Fsrc%2Fprocessing%2Fcore%2FPGraphics.java"
onclick="_CS_click('/gb/ph/signout');"
><u>Sign out</u></a>
</span>
</div>
<div class="gbh" style="left: 0pt;"></div>
<div class="gbh" style="right: 0pt;"></div>
<div style="height: 1px"></div>
<!--[if lte IE 7]>
<div style="text-align:center;">
Your version of Internet Explorer is not supported. Try a browser that
contributes to open source, such as <a href="http://www.firefox.com">Firefox</a>,
<a href="http://www.google.com/chrome">Google Chrome</a>, or
<a href="http://code.google.com/chrome/chromeframe/">Google Chrome Frame</a>.
</div>
<![endif]-->
<table style="padding:0px; margin: 0px 0px 10px 0px; width:100%" cellpadding="0" cellspacing="0">
<tr style="height: 58px;">
<td id="plogo">
<a href="/p/processing/">
<img src="http://www.gstatic.com/codesite/ph/images/defaultlogo.png" alt="Logo">
</a>
</td>
<td style="padding-left: 0.5em">
<div id="pname">
<a href="/p/processing/">processing</a>
</div>
<div id="psum">
<a id="project_summary_link" href="/p/processing/" >An open source programming language and environment for images, animation, and interactions.</a>
</div>
</td>
<td style="white-space:nowrap;text-align:right; vertical-align:bottom;">
<form action="/hosting/search">
<input size="30" name="q" value="" type="text">
<input type="submit" name="projectsearch" value="Search projects" >
</form>
</tr>
</table>
</div>
<div id="mt" class="gtb">
<a href="/p/processing/" class="tab ">Project&nbsp;Home</a>
<a href="/p/processing/downloads/list" class="tab ">Downloads</a>
<a href="/p/processing/w/list" class="tab ">Wiki</a>
<a href="/p/processing/issues/list"
class="tab ">Issues</a>
<a href="/p/processing/source/checkout"
class="tab active">Source</a>
<div class=gtbc></div>
</div>
<table cellspacing="0" cellpadding="0" width="100%" align="center" border="0" class="st">
<tr>
<td class="subt">
<div class="st2">
<div class="isf">
<span class="inst1"><a href="/p/processing/source/checkout">Checkout</a></span> &nbsp;
<span class="inst2"><a href="/p/processing/source/browse/trunk/processing">Browse</a></span> &nbsp;
<span class="inst3"><a href="/p/processing/source/list">Changes</a></span> &nbsp;
<form action="http://www.google.com/codesearch" method="get" style="display:inline"
onsubmit="document.getElementById('codesearchq').value = document.getElementById('origq').value + ' package:http://processing\\.googlecode\\.com'">
<input type="hidden" name="q" id="codesearchq" value="">
<input type="text" maxlength="2048" size="38" id="origq" name="origq" value="" title="Google Code Search" style="font-size:92%">&nbsp;<input type="submit" value="Search Trunk" name="btnG" style="font-size:92%">
</form>
</div>
</div>
</td>
<td align="right" valign="top" class="bevel-right"></td>
</tr>
</table>
<script type="text/javascript">
var cancelBubble = false;
function _go(url) { document.location = url; }
</script>
<div id="maincol"
>
<!-- IE -->
<div class="expand">
<div id="colcontrol">
<style type="text/css">
#file_flipper { white-space: nowrap; padding-right: 2em; }
#file_flipper.hidden { display: none; }
#file_flipper .pagelink { color: #0000CC; text-decoration: underline; }
#file_flipper #visiblefiles { padding-left: 0.5em; padding-right: 0.5em; }
</style>
<table id="nav_and_rev" class="list"
cellpadding="0" cellspacing="0" width="100%">
<tr>
<td nowrap="nowrap" class="src_crumbs src_nav" width="33%">
<strong class="src_nav">Source path:&nbsp;</strong>
<span id="crumb_root">
<a href="/p/processing/source/browse/">svn</a>/&nbsp;</span>
<span id="crumb_links" class="ifClosed"><a href="/p/processing/source/browse/trunk/">trunk</a><span class="sp">/&nbsp;</span><a href="/p/processing/source/browse/trunk/processing/">processing</a><span class="sp">/&nbsp;</span><a href="/p/processing/source/browse/trunk/processing/core/">core</a><span class="sp">/&nbsp;</span><a href="/p/processing/source/browse/trunk/processing/core/src/">src</a><span class="sp">/&nbsp;</span><a href="/p/processing/source/browse/trunk/processing/core/src/processing/">processing</a><span class="sp">/&nbsp;</span><a href="/p/processing/source/browse/trunk/processing/core/src/processing/core/">core</a><span class="sp">/&nbsp;</span>PGraphics.java</span>
</td>
<td nowrap="nowrap" width="33%" align="center">
<a href="/p/processing/source/browse/trunk/processing/core/src/processing/core/PGraphics.java?edit=1"
><img src="http://www.gstatic.com/codesite/ph/images/pencil-y14.png"
class="edit_icon">Edit file</a>
</td>
<td nowrap="nowrap" width="33%" align="right">
<table cellpadding="0" cellspacing="0" style="font-size: 100%"><tr>
<td class="flipper">
<ul class="leftside">
<li><a href="/p/processing/source/browse/trunk/processing/core/src/processing/core/PGraphics.java?r=7750" title="Previous">&lsaquo;r7750</a></li>
</ul>
</td>
<td class="flipper"><b>r7768</b></td>
</tr></table>
</td>
</tr>
</table>
<div class="fc">
<style type="text/css">
.undermouse span {
background-image: url(http://www.gstatic.com/codesite/ph/images/comments.gif); }
</style>
<table class="opened" id="review_comment_area"
><tr>
<td id="nums">
<pre><table width="100%"><tr class="nocursor"><td></td></tr></table></pre>
<pre><table width="100%" id="nums_table_0"><tr id="gr_svn7768_1"
><td id="1"><a href="#1">1</a></td></tr
><tr id="gr_svn7768_2"
><td id="2"><a href="#2">2</a></td></tr
><tr id="gr_svn7768_3"
><td id="3"><a href="#3">3</a></td></tr
><tr id="gr_svn7768_4"
><td id="4"><a href="#4">4</a></td></tr
><tr id="gr_svn7768_5"
><td id="5"><a href="#5">5</a></td></tr
><tr id="gr_svn7768_6"
><td id="6"><a href="#6">6</a></td></tr
><tr id="gr_svn7768_7"
><td id="7"><a href="#7">7</a></td></tr
><tr id="gr_svn7768_8"
><td id="8"><a href="#8">8</a></td></tr
><tr id="gr_svn7768_9"
><td id="9"><a href="#9">9</a></td></tr
><tr id="gr_svn7768_10"
><td id="10"><a href="#10">10</a></td></tr
><tr id="gr_svn7768_11"
><td id="11"><a href="#11">11</a></td></tr
><tr id="gr_svn7768_12"
><td id="12"><a href="#12">12</a></td></tr
><tr id="gr_svn7768_13"
><td id="13"><a href="#13">13</a></td></tr
><tr id="gr_svn7768_14"
><td id="14"><a href="#14">14</a></td></tr
><tr id="gr_svn7768_15"
><td id="15"><a href="#15">15</a></td></tr
><tr id="gr_svn7768_16"
><td id="16"><a href="#16">16</a></td></tr
><tr id="gr_svn7768_17"
><td id="17"><a href="#17">17</a></td></tr
><tr id="gr_svn7768_18"
><td id="18"><a href="#18">18</a></td></tr
><tr id="gr_svn7768_19"
><td id="19"><a href="#19">19</a></td></tr
><tr id="gr_svn7768_20"
><td id="20"><a href="#20">20</a></td></tr
><tr id="gr_svn7768_21"
><td id="21"><a href="#21">21</a></td></tr
><tr id="gr_svn7768_22"
><td id="22"><a href="#22">22</a></td></tr
><tr id="gr_svn7768_23"
><td id="23"><a href="#23">23</a></td></tr
><tr id="gr_svn7768_24"
><td id="24"><a href="#24">24</a></td></tr
><tr id="gr_svn7768_25"
><td id="25"><a href="#25">25</a></td></tr
><tr id="gr_svn7768_26"
><td id="26"><a href="#26">26</a></td></tr
><tr id="gr_svn7768_27"
><td id="27"><a href="#27">27</a></td></tr
><tr id="gr_svn7768_28"
><td id="28"><a href="#28">28</a></td></tr
><tr id="gr_svn7768_29"
><td id="29"><a href="#29">29</a></td></tr
><tr id="gr_svn7768_30"
><td id="30"><a href="#30">30</a></td></tr
><tr id="gr_svn7768_31"
><td id="31"><a href="#31">31</a></td></tr
><tr id="gr_svn7768_32"
><td id="32"><a href="#32">32</a></td></tr
><tr id="gr_svn7768_33"
><td id="33"><a href="#33">33</a></td></tr
><tr id="gr_svn7768_34"
><td id="34"><a href="#34">34</a></td></tr
><tr id="gr_svn7768_35"
><td id="35"><a href="#35">35</a></td></tr
><tr id="gr_svn7768_36"
><td id="36"><a href="#36">36</a></td></tr
><tr id="gr_svn7768_37"
><td id="37"><a href="#37">37</a></td></tr
><tr id="gr_svn7768_38"
><td id="38"><a href="#38">38</a></td></tr
><tr id="gr_svn7768_39"
><td id="39"><a href="#39">39</a></td></tr
><tr id="gr_svn7768_40"
><td id="40"><a href="#40">40</a></td></tr
><tr id="gr_svn7768_41"
><td id="41"><a href="#41">41</a></td></tr
><tr id="gr_svn7768_42"
><td id="42"><a href="#42">42</a></td></tr
><tr id="gr_svn7768_43"
><td id="43"><a href="#43">43</a></td></tr
><tr id="gr_svn7768_44"
><td id="44"><a href="#44">44</a></td></tr
><tr id="gr_svn7768_45"
><td id="45"><a href="#45">45</a></td></tr
><tr id="gr_svn7768_46"
><td id="46"><a href="#46">46</a></td></tr
><tr id="gr_svn7768_47"
><td id="47"><a href="#47">47</a></td></tr
><tr id="gr_svn7768_48"
><td id="48"><a href="#48">48</a></td></tr
><tr id="gr_svn7768_49"
><td id="49"><a href="#49">49</a></td></tr
><tr id="gr_svn7768_50"
><td id="50"><a href="#50">50</a></td></tr
><tr id="gr_svn7768_51"
><td id="51"><a href="#51">51</a></td></tr
><tr id="gr_svn7768_52"
><td id="52"><a href="#52">52</a></td></tr
><tr id="gr_svn7768_53"
><td id="53"><a href="#53">53</a></td></tr
><tr id="gr_svn7768_54"
><td id="54"><a href="#54">54</a></td></tr
><tr id="gr_svn7768_55"
><td id="55"><a href="#55">55</a></td></tr
><tr id="gr_svn7768_56"
><td id="56"><a href="#56">56</a></td></tr
><tr id="gr_svn7768_57"
><td id="57"><a href="#57">57</a></td></tr
><tr id="gr_svn7768_58"
><td id="58"><a href="#58">58</a></td></tr
><tr id="gr_svn7768_59"
><td id="59"><a href="#59">59</a></td></tr
><tr id="gr_svn7768_60"
><td id="60"><a href="#60">60</a></td></tr
><tr id="gr_svn7768_61"
><td id="61"><a href="#61">61</a></td></tr
><tr id="gr_svn7768_62"
><td id="62"><a href="#62">62</a></td></tr
><tr id="gr_svn7768_63"
><td id="63"><a href="#63">63</a></td></tr
><tr id="gr_svn7768_64"
><td id="64"><a href="#64">64</a></td></tr
><tr id="gr_svn7768_65"
><td id="65"><a href="#65">65</a></td></tr
><tr id="gr_svn7768_66"
><td id="66"><a href="#66">66</a></td></tr
><tr id="gr_svn7768_67"
><td id="67"><a href="#67">67</a></td></tr
><tr id="gr_svn7768_68"
><td id="68"><a href="#68">68</a></td></tr
><tr id="gr_svn7768_69"
><td id="69"><a href="#69">69</a></td></tr
><tr id="gr_svn7768_70"
><td id="70"><a href="#70">70</a></td></tr
><tr id="gr_svn7768_71"
><td id="71"><a href="#71">71</a></td></tr
><tr id="gr_svn7768_72"
><td id="72"><a href="#72">72</a></td></tr
><tr id="gr_svn7768_73"
><td id="73"><a href="#73">73</a></td></tr
><tr id="gr_svn7768_74"
><td id="74"><a href="#74">74</a></td></tr
><tr id="gr_svn7768_75"
><td id="75"><a href="#75">75</a></td></tr
><tr id="gr_svn7768_76"
><td id="76"><a href="#76">76</a></td></tr
><tr id="gr_svn7768_77"
><td id="77"><a href="#77">77</a></td></tr
><tr id="gr_svn7768_78"
><td id="78"><a href="#78">78</a></td></tr
><tr id="gr_svn7768_79"
><td id="79"><a href="#79">79</a></td></tr
><tr id="gr_svn7768_80"
><td id="80"><a href="#80">80</a></td></tr
><tr id="gr_svn7768_81"
><td id="81"><a href="#81">81</a></td></tr
><tr id="gr_svn7768_82"
><td id="82"><a href="#82">82</a></td></tr
><tr id="gr_svn7768_83"
><td id="83"><a href="#83">83</a></td></tr
><tr id="gr_svn7768_84"
><td id="84"><a href="#84">84</a></td></tr
><tr id="gr_svn7768_85"
><td id="85"><a href="#85">85</a></td></tr
><tr id="gr_svn7768_86"
><td id="86"><a href="#86">86</a></td></tr
><tr id="gr_svn7768_87"
><td id="87"><a href="#87">87</a></td></tr
><tr id="gr_svn7768_88"
><td id="88"><a href="#88">88</a></td></tr
><tr id="gr_svn7768_89"
><td id="89"><a href="#89">89</a></td></tr
><tr id="gr_svn7768_90"
><td id="90"><a href="#90">90</a></td></tr
><tr id="gr_svn7768_91"
><td id="91"><a href="#91">91</a></td></tr
><tr id="gr_svn7768_92"
><td id="92"><a href="#92">92</a></td></tr
><tr id="gr_svn7768_93"
><td id="93"><a href="#93">93</a></td></tr
><tr id="gr_svn7768_94"
><td id="94"><a href="#94">94</a></td></tr
><tr id="gr_svn7768_95"
><td id="95"><a href="#95">95</a></td></tr
><tr id="gr_svn7768_96"
><td id="96"><a href="#96">96</a></td></tr
><tr id="gr_svn7768_97"
><td id="97"><a href="#97">97</a></td></tr
><tr id="gr_svn7768_98"
><td id="98"><a href="#98">98</a></td></tr
><tr id="gr_svn7768_99"
><td id="99"><a href="#99">99</a></td></tr
><tr id="gr_svn7768_100"
><td id="100"><a href="#100">100</a></td></tr
><tr id="gr_svn7768_101"
><td id="101"><a href="#101">101</a></td></tr
><tr id="gr_svn7768_102"
><td id="102"><a href="#102">102</a></td></tr
><tr id="gr_svn7768_103"
><td id="103"><a href="#103">103</a></td></tr
><tr id="gr_svn7768_104"
><td id="104"><a href="#104">104</a></td></tr
><tr id="gr_svn7768_105"
><td id="105"><a href="#105">105</a></td></tr
><tr id="gr_svn7768_106"
><td id="106"><a href="#106">106</a></td></tr
><tr id="gr_svn7768_107"
><td id="107"><a href="#107">107</a></td></tr
><tr id="gr_svn7768_108"
><td id="108"><a href="#108">108</a></td></tr
><tr id="gr_svn7768_109"
><td id="109"><a href="#109">109</a></td></tr
><tr id="gr_svn7768_110"
><td id="110"><a href="#110">110</a></td></tr
><tr id="gr_svn7768_111"
><td id="111"><a href="#111">111</a></td></tr
><tr id="gr_svn7768_112"
><td id="112"><a href="#112">112</a></td></tr
><tr id="gr_svn7768_113"
><td id="113"><a href="#113">113</a></td></tr
><tr id="gr_svn7768_114"
><td id="114"><a href="#114">114</a></td></tr
><tr id="gr_svn7768_115"
><td id="115"><a href="#115">115</a></td></tr
><tr id="gr_svn7768_116"
><td id="116"><a href="#116">116</a></td></tr
><tr id="gr_svn7768_117"
><td id="117"><a href="#117">117</a></td></tr
><tr id="gr_svn7768_118"
><td id="118"><a href="#118">118</a></td></tr
><tr id="gr_svn7768_119"
><td id="119"><a href="#119">119</a></td></tr
><tr id="gr_svn7768_120"
><td id="120"><a href="#120">120</a></td></tr
><tr id="gr_svn7768_121"
><td id="121"><a href="#121">121</a></td></tr
><tr id="gr_svn7768_122"
><td id="122"><a href="#122">122</a></td></tr
><tr id="gr_svn7768_123"
><td id="123"><a href="#123">123</a></td></tr
><tr id="gr_svn7768_124"
><td id="124"><a href="#124">124</a></td></tr
><tr id="gr_svn7768_125"
><td id="125"><a href="#125">125</a></td></tr
><tr id="gr_svn7768_126"
><td id="126"><a href="#126">126</a></td></tr
><tr id="gr_svn7768_127"
><td id="127"><a href="#127">127</a></td></tr
><tr id="gr_svn7768_128"
><td id="128"><a href="#128">128</a></td></tr
><tr id="gr_svn7768_129"
><td id="129"><a href="#129">129</a></td></tr
><tr id="gr_svn7768_130"
><td id="130"><a href="#130">130</a></td></tr
><tr id="gr_svn7768_131"
><td id="131"><a href="#131">131</a></td></tr
><tr id="gr_svn7768_132"
><td id="132"><a href="#132">132</a></td></tr
><tr id="gr_svn7768_133"
><td id="133"><a href="#133">133</a></td></tr
><tr id="gr_svn7768_134"
><td id="134"><a href="#134">134</a></td></tr
><tr id="gr_svn7768_135"
><td id="135"><a href="#135">135</a></td></tr
><tr id="gr_svn7768_136"
><td id="136"><a href="#136">136</a></td></tr
><tr id="gr_svn7768_137"
><td id="137"><a href="#137">137</a></td></tr
><tr id="gr_svn7768_138"
><td id="138"><a href="#138">138</a></td></tr
><tr id="gr_svn7768_139"
><td id="139"><a href="#139">139</a></td></tr
><tr id="gr_svn7768_140"
><td id="140"><a href="#140">140</a></td></tr
><tr id="gr_svn7768_141"
><td id="141"><a href="#141">141</a></td></tr
><tr id="gr_svn7768_142"
><td id="142"><a href="#142">142</a></td></tr
><tr id="gr_svn7768_143"
><td id="143"><a href="#143">143</a></td></tr
><tr id="gr_svn7768_144"
><td id="144"><a href="#144">144</a></td></tr
><tr id="gr_svn7768_145"
><td id="145"><a href="#145">145</a></td></tr
><tr id="gr_svn7768_146"
><td id="146"><a href="#146">146</a></td></tr
><tr id="gr_svn7768_147"
><td id="147"><a href="#147">147</a></td></tr
><tr id="gr_svn7768_148"
><td id="148"><a href="#148">148</a></td></tr
><tr id="gr_svn7768_149"
><td id="149"><a href="#149">149</a></td></tr
><tr id="gr_svn7768_150"
><td id="150"><a href="#150">150</a></td></tr
><tr id="gr_svn7768_151"
><td id="151"><a href="#151">151</a></td></tr
><tr id="gr_svn7768_152"
><td id="152"><a href="#152">152</a></td></tr
><tr id="gr_svn7768_153"
><td id="153"><a href="#153">153</a></td></tr
><tr id="gr_svn7768_154"
><td id="154"><a href="#154">154</a></td></tr
><tr id="gr_svn7768_155"
><td id="155"><a href="#155">155</a></td></tr
><tr id="gr_svn7768_156"
><td id="156"><a href="#156">156</a></td></tr
><tr id="gr_svn7768_157"
><td id="157"><a href="#157">157</a></td></tr
><tr id="gr_svn7768_158"
><td id="158"><a href="#158">158</a></td></tr
><tr id="gr_svn7768_159"
><td id="159"><a href="#159">159</a></td></tr
><tr id="gr_svn7768_160"
><td id="160"><a href="#160">160</a></td></tr
><tr id="gr_svn7768_161"
><td id="161"><a href="#161">161</a></td></tr
><tr id="gr_svn7768_162"
><td id="162"><a href="#162">162</a></td></tr
><tr id="gr_svn7768_163"
><td id="163"><a href="#163">163</a></td></tr
><tr id="gr_svn7768_164"
><td id="164"><a href="#164">164</a></td></tr
><tr id="gr_svn7768_165"
><td id="165"><a href="#165">165</a></td></tr
><tr id="gr_svn7768_166"
><td id="166"><a href="#166">166</a></td></tr
><tr id="gr_svn7768_167"
><td id="167"><a href="#167">167</a></td></tr
><tr id="gr_svn7768_168"
><td id="168"><a href="#168">168</a></td></tr
><tr id="gr_svn7768_169"
><td id="169"><a href="#169">169</a></td></tr
><tr id="gr_svn7768_170"
><td id="170"><a href="#170">170</a></td></tr
><tr id="gr_svn7768_171"
><td id="171"><a href="#171">171</a></td></tr
><tr id="gr_svn7768_172"
><td id="172"><a href="#172">172</a></td></tr
><tr id="gr_svn7768_173"
><td id="173"><a href="#173">173</a></td></tr
><tr id="gr_svn7768_174"
><td id="174"><a href="#174">174</a></td></tr
><tr id="gr_svn7768_175"
><td id="175"><a href="#175">175</a></td></tr
><tr id="gr_svn7768_176"
><td id="176"><a href="#176">176</a></td></tr
><tr id="gr_svn7768_177"
><td id="177"><a href="#177">177</a></td></tr
><tr id="gr_svn7768_178"
><td id="178"><a href="#178">178</a></td></tr
><tr id="gr_svn7768_179"
><td id="179"><a href="#179">179</a></td></tr
><tr id="gr_svn7768_180"
><td id="180"><a href="#180">180</a></td></tr
><tr id="gr_svn7768_181"
><td id="181"><a href="#181">181</a></td></tr
><tr id="gr_svn7768_182"
><td id="182"><a href="#182">182</a></td></tr
><tr id="gr_svn7768_183"
><td id="183"><a href="#183">183</a></td></tr
><tr id="gr_svn7768_184"
><td id="184"><a href="#184">184</a></td></tr
><tr id="gr_svn7768_185"
><td id="185"><a href="#185">185</a></td></tr
><tr id="gr_svn7768_186"
><td id="186"><a href="#186">186</a></td></tr
><tr id="gr_svn7768_187"
><td id="187"><a href="#187">187</a></td></tr
><tr id="gr_svn7768_188"
><td id="188"><a href="#188">188</a></td></tr
><tr id="gr_svn7768_189"
><td id="189"><a href="#189">189</a></td></tr
><tr id="gr_svn7768_190"
><td id="190"><a href="#190">190</a></td></tr
><tr id="gr_svn7768_191"
><td id="191"><a href="#191">191</a></td></tr
><tr id="gr_svn7768_192"
><td id="192"><a href="#192">192</a></td></tr
><tr id="gr_svn7768_193"
><td id="193"><a href="#193">193</a></td></tr
><tr id="gr_svn7768_194"
><td id="194"><a href="#194">194</a></td></tr
><tr id="gr_svn7768_195"
><td id="195"><a href="#195">195</a></td></tr
><tr id="gr_svn7768_196"
><td id="196"><a href="#196">196</a></td></tr
><tr id="gr_svn7768_197"
><td id="197"><a href="#197">197</a></td></tr
><tr id="gr_svn7768_198"
><td id="198"><a href="#198">198</a></td></tr
><tr id="gr_svn7768_199"
><td id="199"><a href="#199">199</a></td></tr
><tr id="gr_svn7768_200"
><td id="200"><a href="#200">200</a></td></tr
><tr id="gr_svn7768_201"
><td id="201"><a href="#201">201</a></td></tr
><tr id="gr_svn7768_202"
><td id="202"><a href="#202">202</a></td></tr
><tr id="gr_svn7768_203"
><td id="203"><a href="#203">203</a></td></tr
><tr id="gr_svn7768_204"
><td id="204"><a href="#204">204</a></td></tr
><tr id="gr_svn7768_205"
><td id="205"><a href="#205">205</a></td></tr
><tr id="gr_svn7768_206"
><td id="206"><a href="#206">206</a></td></tr
><tr id="gr_svn7768_207"
><td id="207"><a href="#207">207</a></td></tr
><tr id="gr_svn7768_208"
><td id="208"><a href="#208">208</a></td></tr
><tr id="gr_svn7768_209"
><td id="209"><a href="#209">209</a></td></tr
><tr id="gr_svn7768_210"
><td id="210"><a href="#210">210</a></td></tr
><tr id="gr_svn7768_211"
><td id="211"><a href="#211">211</a></td></tr
><tr id="gr_svn7768_212"
><td id="212"><a href="#212">212</a></td></tr
><tr id="gr_svn7768_213"
><td id="213"><a href="#213">213</a></td></tr
><tr id="gr_svn7768_214"
><td id="214"><a href="#214">214</a></td></tr
><tr id="gr_svn7768_215"
><td id="215"><a href="#215">215</a></td></tr
><tr id="gr_svn7768_216"
><td id="216"><a href="#216">216</a></td></tr
><tr id="gr_svn7768_217"
><td id="217"><a href="#217">217</a></td></tr
><tr id="gr_svn7768_218"
><td id="218"><a href="#218">218</a></td></tr
><tr id="gr_svn7768_219"
><td id="219"><a href="#219">219</a></td></tr
><tr id="gr_svn7768_220"
><td id="220"><a href="#220">220</a></td></tr
><tr id="gr_svn7768_221"
><td id="221"><a href="#221">221</a></td></tr
><tr id="gr_svn7768_222"
><td id="222"><a href="#222">222</a></td></tr
><tr id="gr_svn7768_223"
><td id="223"><a href="#223">223</a></td></tr
><tr id="gr_svn7768_224"
><td id="224"><a href="#224">224</a></td></tr
><tr id="gr_svn7768_225"
><td id="225"><a href="#225">225</a></td></tr
><tr id="gr_svn7768_226"
><td id="226"><a href="#226">226</a></td></tr
><tr id="gr_svn7768_227"
><td id="227"><a href="#227">227</a></td></tr
><tr id="gr_svn7768_228"
><td id="228"><a href="#228">228</a></td></tr
><tr id="gr_svn7768_229"
><td id="229"><a href="#229">229</a></td></tr
><tr id="gr_svn7768_230"
><td id="230"><a href="#230">230</a></td></tr
><tr id="gr_svn7768_231"
><td id="231"><a href="#231">231</a></td></tr
><tr id="gr_svn7768_232"
><td id="232"><a href="#232">232</a></td></tr
><tr id="gr_svn7768_233"
><td id="233"><a href="#233">233</a></td></tr
><tr id="gr_svn7768_234"
><td id="234"><a href="#234">234</a></td></tr
><tr id="gr_svn7768_235"
><td id="235"><a href="#235">235</a></td></tr
><tr id="gr_svn7768_236"
><td id="236"><a href="#236">236</a></td></tr
><tr id="gr_svn7768_237"
><td id="237"><a href="#237">237</a></td></tr
><tr id="gr_svn7768_238"
><td id="238"><a href="#238">238</a></td></tr
><tr id="gr_svn7768_239"
><td id="239"><a href="#239">239</a></td></tr
><tr id="gr_svn7768_240"
><td id="240"><a href="#240">240</a></td></tr
><tr id="gr_svn7768_241"
><td id="241"><a href="#241">241</a></td></tr
><tr id="gr_svn7768_242"
><td id="242"><a href="#242">242</a></td></tr
><tr id="gr_svn7768_243"
><td id="243"><a href="#243">243</a></td></tr
><tr id="gr_svn7768_244"
><td id="244"><a href="#244">244</a></td></tr
><tr id="gr_svn7768_245"
><td id="245"><a href="#245">245</a></td></tr
><tr id="gr_svn7768_246"
><td id="246"><a href="#246">246</a></td></tr
><tr id="gr_svn7768_247"
><td id="247"><a href="#247">247</a></td></tr
><tr id="gr_svn7768_248"
><td id="248"><a href="#248">248</a></td></tr
><tr id="gr_svn7768_249"
><td id="249"><a href="#249">249</a></td></tr
><tr id="gr_svn7768_250"
><td id="250"><a href="#250">250</a></td></tr
><tr id="gr_svn7768_251"
><td id="251"><a href="#251">251</a></td></tr
><tr id="gr_svn7768_252"
><td id="252"><a href="#252">252</a></td></tr
><tr id="gr_svn7768_253"
><td id="253"><a href="#253">253</a></td></tr
><tr id="gr_svn7768_254"
><td id="254"><a href="#254">254</a></td></tr
><tr id="gr_svn7768_255"
><td id="255"><a href="#255">255</a></td></tr
><tr id="gr_svn7768_256"
><td id="256"><a href="#256">256</a></td></tr
><tr id="gr_svn7768_257"
><td id="257"><a href="#257">257</a></td></tr
><tr id="gr_svn7768_258"
><td id="258"><a href="#258">258</a></td></tr
><tr id="gr_svn7768_259"
><td id="259"><a href="#259">259</a></td></tr
><tr id="gr_svn7768_260"
><td id="260"><a href="#260">260</a></td></tr
><tr id="gr_svn7768_261"
><td id="261"><a href="#261">261</a></td></tr
><tr id="gr_svn7768_262"
><td id="262"><a href="#262">262</a></td></tr
><tr id="gr_svn7768_263"
><td id="263"><a href="#263">263</a></td></tr
><tr id="gr_svn7768_264"
><td id="264"><a href="#264">264</a></td></tr
><tr id="gr_svn7768_265"
><td id="265"><a href="#265">265</a></td></tr
><tr id="gr_svn7768_266"
><td id="266"><a href="#266">266</a></td></tr
><tr id="gr_svn7768_267"
><td id="267"><a href="#267">267</a></td></tr
><tr id="gr_svn7768_268"
><td id="268"><a href="#268">268</a></td></tr
><tr id="gr_svn7768_269"
><td id="269"><a href="#269">269</a></td></tr
><tr id="gr_svn7768_270"
><td id="270"><a href="#270">270</a></td></tr
><tr id="gr_svn7768_271"
><td id="271"><a href="#271">271</a></td></tr
><tr id="gr_svn7768_272"
><td id="272"><a href="#272">272</a></td></tr
><tr id="gr_svn7768_273"
><td id="273"><a href="#273">273</a></td></tr
><tr id="gr_svn7768_274"
><td id="274"><a href="#274">274</a></td></tr
><tr id="gr_svn7768_275"
><td id="275"><a href="#275">275</a></td></tr
><tr id="gr_svn7768_276"
><td id="276"><a href="#276">276</a></td></tr
><tr id="gr_svn7768_277"
><td id="277"><a href="#277">277</a></td></tr
><tr id="gr_svn7768_278"
><td id="278"><a href="#278">278</a></td></tr
><tr id="gr_svn7768_279"
><td id="279"><a href="#279">279</a></td></tr
><tr id="gr_svn7768_280"
><td id="280"><a href="#280">280</a></td></tr
><tr id="gr_svn7768_281"
><td id="281"><a href="#281">281</a></td></tr
><tr id="gr_svn7768_282"
><td id="282"><a href="#282">282</a></td></tr
><tr id="gr_svn7768_283"
><td id="283"><a href="#283">283</a></td></tr
><tr id="gr_svn7768_284"
><td id="284"><a href="#284">284</a></td></tr
><tr id="gr_svn7768_285"
><td id="285"><a href="#285">285</a></td></tr
><tr id="gr_svn7768_286"
><td id="286"><a href="#286">286</a></td></tr
><tr id="gr_svn7768_287"
><td id="287"><a href="#287">287</a></td></tr
><tr id="gr_svn7768_288"
><td id="288"><a href="#288">288</a></td></tr
><tr id="gr_svn7768_289"
><td id="289"><a href="#289">289</a></td></tr
><tr id="gr_svn7768_290"
><td id="290"><a href="#290">290</a></td></tr
><tr id="gr_svn7768_291"
><td id="291"><a href="#291">291</a></td></tr
><tr id="gr_svn7768_292"
><td id="292"><a href="#292">292</a></td></tr
><tr id="gr_svn7768_293"
><td id="293"><a href="#293">293</a></td></tr
><tr id="gr_svn7768_294"
><td id="294"><a href="#294">294</a></td></tr
><tr id="gr_svn7768_295"
><td id="295"><a href="#295">295</a></td></tr
><tr id="gr_svn7768_296"
><td id="296"><a href="#296">296</a></td></tr
><tr id="gr_svn7768_297"
><td id="297"><a href="#297">297</a></td></tr
><tr id="gr_svn7768_298"
><td id="298"><a href="#298">298</a></td></tr
><tr id="gr_svn7768_299"
><td id="299"><a href="#299">299</a></td></tr
><tr id="gr_svn7768_300"
><td id="300"><a href="#300">300</a></td></tr
><tr id="gr_svn7768_301"
><td id="301"><a href="#301">301</a></td></tr
><tr id="gr_svn7768_302"
><td id="302"><a href="#302">302</a></td></tr
><tr id="gr_svn7768_303"
><td id="303"><a href="#303">303</a></td></tr
><tr id="gr_svn7768_304"
><td id="304"><a href="#304">304</a></td></tr
><tr id="gr_svn7768_305"
><td id="305"><a href="#305">305</a></td></tr
><tr id="gr_svn7768_306"
><td id="306"><a href="#306">306</a></td></tr
><tr id="gr_svn7768_307"
><td id="307"><a href="#307">307</a></td></tr
><tr id="gr_svn7768_308"
><td id="308"><a href="#308">308</a></td></tr
><tr id="gr_svn7768_309"
><td id="309"><a href="#309">309</a></td></tr
><tr id="gr_svn7768_310"
><td id="310"><a href="#310">310</a></td></tr
><tr id="gr_svn7768_311"
><td id="311"><a href="#311">311</a></td></tr
><tr id="gr_svn7768_312"
><td id="312"><a href="#312">312</a></td></tr
><tr id="gr_svn7768_313"
><td id="313"><a href="#313">313</a></td></tr
><tr id="gr_svn7768_314"
><td id="314"><a href="#314">314</a></td></tr
><tr id="gr_svn7768_315"
><td id="315"><a href="#315">315</a></td></tr
><tr id="gr_svn7768_316"
><td id="316"><a href="#316">316</a></td></tr
><tr id="gr_svn7768_317"
><td id="317"><a href="#317">317</a></td></tr
><tr id="gr_svn7768_318"
><td id="318"><a href="#318">318</a></td></tr
><tr id="gr_svn7768_319"
><td id="319"><a href="#319">319</a></td></tr
><tr id="gr_svn7768_320"
><td id="320"><a href="#320">320</a></td></tr
><tr id="gr_svn7768_321"
><td id="321"><a href="#321">321</a></td></tr
><tr id="gr_svn7768_322"
><td id="322"><a href="#322">322</a></td></tr
><tr id="gr_svn7768_323"
><td id="323"><a href="#323">323</a></td></tr
><tr id="gr_svn7768_324"
><td id="324"><a href="#324">324</a></td></tr
><tr id="gr_svn7768_325"
><td id="325"><a href="#325">325</a></td></tr
><tr id="gr_svn7768_326"
><td id="326"><a href="#326">326</a></td></tr
><tr id="gr_svn7768_327"
><td id="327"><a href="#327">327</a></td></tr
><tr id="gr_svn7768_328"
><td id="328"><a href="#328">328</a></td></tr
><tr id="gr_svn7768_329"
><td id="329"><a href="#329">329</a></td></tr
><tr id="gr_svn7768_330"
><td id="330"><a href="#330">330</a></td></tr
><tr id="gr_svn7768_331"
><td id="331"><a href="#331">331</a></td></tr
><tr id="gr_svn7768_332"
><td id="332"><a href="#332">332</a></td></tr
><tr id="gr_svn7768_333"
><td id="333"><a href="#333">333</a></td></tr
><tr id="gr_svn7768_334"
><td id="334"><a href="#334">334</a></td></tr
><tr id="gr_svn7768_335"
><td id="335"><a href="#335">335</a></td></tr
><tr id="gr_svn7768_336"
><td id="336"><a href="#336">336</a></td></tr
><tr id="gr_svn7768_337"
><td id="337"><a href="#337">337</a></td></tr
><tr id="gr_svn7768_338"
><td id="338"><a href="#338">338</a></td></tr
><tr id="gr_svn7768_339"
><td id="339"><a href="#339">339</a></td></tr
><tr id="gr_svn7768_340"
><td id="340"><a href="#340">340</a></td></tr
><tr id="gr_svn7768_341"
><td id="341"><a href="#341">341</a></td></tr
><tr id="gr_svn7768_342"
><td id="342"><a href="#342">342</a></td></tr
><tr id="gr_svn7768_343"
><td id="343"><a href="#343">343</a></td></tr
><tr id="gr_svn7768_344"
><td id="344"><a href="#344">344</a></td></tr
><tr id="gr_svn7768_345"
><td id="345"><a href="#345">345</a></td></tr
><tr id="gr_svn7768_346"
><td id="346"><a href="#346">346</a></td></tr
><tr id="gr_svn7768_347"
><td id="347"><a href="#347">347</a></td></tr
><tr id="gr_svn7768_348"
><td id="348"><a href="#348">348</a></td></tr
><tr id="gr_svn7768_349"
><td id="349"><a href="#349">349</a></td></tr
><tr id="gr_svn7768_350"
><td id="350"><a href="#350">350</a></td></tr
><tr id="gr_svn7768_351"
><td id="351"><a href="#351">351</a></td></tr
><tr id="gr_svn7768_352"
><td id="352"><a href="#352">352</a></td></tr
><tr id="gr_svn7768_353"
><td id="353"><a href="#353">353</a></td></tr
><tr id="gr_svn7768_354"
><td id="354"><a href="#354">354</a></td></tr
><tr id="gr_svn7768_355"
><td id="355"><a href="#355">355</a></td></tr
><tr id="gr_svn7768_356"
><td id="356"><a href="#356">356</a></td></tr
><tr id="gr_svn7768_357"
><td id="357"><a href="#357">357</a></td></tr
><tr id="gr_svn7768_358"
><td id="358"><a href="#358">358</a></td></tr
><tr id="gr_svn7768_359"
><td id="359"><a href="#359">359</a></td></tr
><tr id="gr_svn7768_360"
><td id="360"><a href="#360">360</a></td></tr
><tr id="gr_svn7768_361"
><td id="361"><a href="#361">361</a></td></tr
><tr id="gr_svn7768_362"
><td id="362"><a href="#362">362</a></td></tr
><tr id="gr_svn7768_363"
><td id="363"><a href="#363">363</a></td></tr
><tr id="gr_svn7768_364"
><td id="364"><a href="#364">364</a></td></tr
><tr id="gr_svn7768_365"
><td id="365"><a href="#365">365</a></td></tr
><tr id="gr_svn7768_366"
><td id="366"><a href="#366">366</a></td></tr
><tr id="gr_svn7768_367"
><td id="367"><a href="#367">367</a></td></tr
><tr id="gr_svn7768_368"
><td id="368"><a href="#368">368</a></td></tr
><tr id="gr_svn7768_369"
><td id="369"><a href="#369">369</a></td></tr
><tr id="gr_svn7768_370"
><td id="370"><a href="#370">370</a></td></tr
><tr id="gr_svn7768_371"
><td id="371"><a href="#371">371</a></td></tr
><tr id="gr_svn7768_372"
><td id="372"><a href="#372">372</a></td></tr
><tr id="gr_svn7768_373"
><td id="373"><a href="#373">373</a></td></tr
><tr id="gr_svn7768_374"
><td id="374"><a href="#374">374</a></td></tr
><tr id="gr_svn7768_375"
><td id="375"><a href="#375">375</a></td></tr
><tr id="gr_svn7768_376"
><td id="376"><a href="#376">376</a></td></tr
><tr id="gr_svn7768_377"
><td id="377"><a href="#377">377</a></td></tr
><tr id="gr_svn7768_378"
><td id="378"><a href="#378">378</a></td></tr
><tr id="gr_svn7768_379"
><td id="379"><a href="#379">379</a></td></tr
><tr id="gr_svn7768_380"
><td id="380"><a href="#380">380</a></td></tr
><tr id="gr_svn7768_381"
><td id="381"><a href="#381">381</a></td></tr
><tr id="gr_svn7768_382"
><td id="382"><a href="#382">382</a></td></tr
><tr id="gr_svn7768_383"
><td id="383"><a href="#383">383</a></td></tr
><tr id="gr_svn7768_384"
><td id="384"><a href="#384">384</a></td></tr
><tr id="gr_svn7768_385"
><td id="385"><a href="#385">385</a></td></tr
><tr id="gr_svn7768_386"
><td id="386"><a href="#386">386</a></td></tr
><tr id="gr_svn7768_387"
><td id="387"><a href="#387">387</a></td></tr
><tr id="gr_svn7768_388"
><td id="388"><a href="#388">388</a></td></tr
><tr id="gr_svn7768_389"
><td id="389"><a href="#389">389</a></td></tr
><tr id="gr_svn7768_390"
><td id="390"><a href="#390">390</a></td></tr
><tr id="gr_svn7768_391"
><td id="391"><a href="#391">391</a></td></tr
><tr id="gr_svn7768_392"
><td id="392"><a href="#392">392</a></td></tr
><tr id="gr_svn7768_393"
><td id="393"><a href="#393">393</a></td></tr
><tr id="gr_svn7768_394"
><td id="394"><a href="#394">394</a></td></tr
><tr id="gr_svn7768_395"
><td id="395"><a href="#395">395</a></td></tr
><tr id="gr_svn7768_396"
><td id="396"><a href="#396">396</a></td></tr
><tr id="gr_svn7768_397"
><td id="397"><a href="#397">397</a></td></tr
><tr id="gr_svn7768_398"
><td id="398"><a href="#398">398</a></td></tr
><tr id="gr_svn7768_399"
><td id="399"><a href="#399">399</a></td></tr
><tr id="gr_svn7768_400"
><td id="400"><a href="#400">400</a></td></tr
><tr id="gr_svn7768_401"
><td id="401"><a href="#401">401</a></td></tr
><tr id="gr_svn7768_402"
><td id="402"><a href="#402">402</a></td></tr
><tr id="gr_svn7768_403"
><td id="403"><a href="#403">403</a></td></tr
><tr id="gr_svn7768_404"
><td id="404"><a href="#404">404</a></td></tr
><tr id="gr_svn7768_405"
><td id="405"><a href="#405">405</a></td></tr
><tr id="gr_svn7768_406"
><td id="406"><a href="#406">406</a></td></tr
><tr id="gr_svn7768_407"
><td id="407"><a href="#407">407</a></td></tr
><tr id="gr_svn7768_408"
><td id="408"><a href="#408">408</a></td></tr
><tr id="gr_svn7768_409"
><td id="409"><a href="#409">409</a></td></tr
><tr id="gr_svn7768_410"
><td id="410"><a href="#410">410</a></td></tr
><tr id="gr_svn7768_411"
><td id="411"><a href="#411">411</a></td></tr
><tr id="gr_svn7768_412"
><td id="412"><a href="#412">412</a></td></tr
><tr id="gr_svn7768_413"
><td id="413"><a href="#413">413</a></td></tr
><tr id="gr_svn7768_414"
><td id="414"><a href="#414">414</a></td></tr
><tr id="gr_svn7768_415"
><td id="415"><a href="#415">415</a></td></tr
><tr id="gr_svn7768_416"
><td id="416"><a href="#416">416</a></td></tr
><tr id="gr_svn7768_417"
><td id="417"><a href="#417">417</a></td></tr
><tr id="gr_svn7768_418"
><td id="418"><a href="#418">418</a></td></tr
><tr id="gr_svn7768_419"
><td id="419"><a href="#419">419</a></td></tr
><tr id="gr_svn7768_420"
><td id="420"><a href="#420">420</a></td></tr
><tr id="gr_svn7768_421"
><td id="421"><a href="#421">421</a></td></tr
><tr id="gr_svn7768_422"
><td id="422"><a href="#422">422</a></td></tr
><tr id="gr_svn7768_423"
><td id="423"><a href="#423">423</a></td></tr
><tr id="gr_svn7768_424"
><td id="424"><a href="#424">424</a></td></tr
><tr id="gr_svn7768_425"
><td id="425"><a href="#425">425</a></td></tr
><tr id="gr_svn7768_426"
><td id="426"><a href="#426">426</a></td></tr
><tr id="gr_svn7768_427"
><td id="427"><a href="#427">427</a></td></tr
><tr id="gr_svn7768_428"
><td id="428"><a href="#428">428</a></td></tr
><tr id="gr_svn7768_429"
><td id="429"><a href="#429">429</a></td></tr
><tr id="gr_svn7768_430"
><td id="430"><a href="#430">430</a></td></tr
><tr id="gr_svn7768_431"
><td id="431"><a href="#431">431</a></td></tr
><tr id="gr_svn7768_432"
><td id="432"><a href="#432">432</a></td></tr
><tr id="gr_svn7768_433"
><td id="433"><a href="#433">433</a></td></tr
><tr id="gr_svn7768_434"
><td id="434"><a href="#434">434</a></td></tr
><tr id="gr_svn7768_435"
><td id="435"><a href="#435">435</a></td></tr
><tr id="gr_svn7768_436"
><td id="436"><a href="#436">436</a></td></tr
><tr id="gr_svn7768_437"
><td id="437"><a href="#437">437</a></td></tr
><tr id="gr_svn7768_438"
><td id="438"><a href="#438">438</a></td></tr
><tr id="gr_svn7768_439"
><td id="439"><a href="#439">439</a></td></tr
><tr id="gr_svn7768_440"
><td id="440"><a href="#440">440</a></td></tr
><tr id="gr_svn7768_441"
><td id="441"><a href="#441">441</a></td></tr
><tr id="gr_svn7768_442"
><td id="442"><a href="#442">442</a></td></tr
><tr id="gr_svn7768_443"
><td id="443"><a href="#443">443</a></td></tr
><tr id="gr_svn7768_444"
><td id="444"><a href="#444">444</a></td></tr
><tr id="gr_svn7768_445"
><td id="445"><a href="#445">445</a></td></tr
><tr id="gr_svn7768_446"
><td id="446"><a href="#446">446</a></td></tr
><tr id="gr_svn7768_447"
><td id="447"><a href="#447">447</a></td></tr
><tr id="gr_svn7768_448"
><td id="448"><a href="#448">448</a></td></tr
><tr id="gr_svn7768_449"
><td id="449"><a href="#449">449</a></td></tr
><tr id="gr_svn7768_450"
><td id="450"><a href="#450">450</a></td></tr
><tr id="gr_svn7768_451"
><td id="451"><a href="#451">451</a></td></tr
><tr id="gr_svn7768_452"
><td id="452"><a href="#452">452</a></td></tr
><tr id="gr_svn7768_453"
><td id="453"><a href="#453">453</a></td></tr
><tr id="gr_svn7768_454"
><td id="454"><a href="#454">454</a></td></tr
><tr id="gr_svn7768_455"
><td id="455"><a href="#455">455</a></td></tr
><tr id="gr_svn7768_456"
><td id="456"><a href="#456">456</a></td></tr
><tr id="gr_svn7768_457"
><td id="457"><a href="#457">457</a></td></tr
><tr id="gr_svn7768_458"
><td id="458"><a href="#458">458</a></td></tr
><tr id="gr_svn7768_459"
><td id="459"><a href="#459">459</a></td></tr
><tr id="gr_svn7768_460"
><td id="460"><a href="#460">460</a></td></tr
><tr id="gr_svn7768_461"
><td id="461"><a href="#461">461</a></td></tr
><tr id="gr_svn7768_462"
><td id="462"><a href="#462">462</a></td></tr
><tr id="gr_svn7768_463"
><td id="463"><a href="#463">463</a></td></tr
><tr id="gr_svn7768_464"
><td id="464"><a href="#464">464</a></td></tr
><tr id="gr_svn7768_465"
><td id="465"><a href="#465">465</a></td></tr
><tr id="gr_svn7768_466"
><td id="466"><a href="#466">466</a></td></tr
><tr id="gr_svn7768_467"
><td id="467"><a href="#467">467</a></td></tr
><tr id="gr_svn7768_468"
><td id="468"><a href="#468">468</a></td></tr
><tr id="gr_svn7768_469"
><td id="469"><a href="#469">469</a></td></tr
><tr id="gr_svn7768_470"
><td id="470"><a href="#470">470</a></td></tr
><tr id="gr_svn7768_471"
><td id="471"><a href="#471">471</a></td></tr
><tr id="gr_svn7768_472"
><td id="472"><a href="#472">472</a></td></tr
><tr id="gr_svn7768_473"
><td id="473"><a href="#473">473</a></td></tr
><tr id="gr_svn7768_474"
><td id="474"><a href="#474">474</a></td></tr
><tr id="gr_svn7768_475"
><td id="475"><a href="#475">475</a></td></tr
><tr id="gr_svn7768_476"
><td id="476"><a href="#476">476</a></td></tr
><tr id="gr_svn7768_477"
><td id="477"><a href="#477">477</a></td></tr
><tr id="gr_svn7768_478"
><td id="478"><a href="#478">478</a></td></tr
><tr id="gr_svn7768_479"
><td id="479"><a href="#479">479</a></td></tr
><tr id="gr_svn7768_480"
><td id="480"><a href="#480">480</a></td></tr
><tr id="gr_svn7768_481"
><td id="481"><a href="#481">481</a></td></tr
><tr id="gr_svn7768_482"
><td id="482"><a href="#482">482</a></td></tr
><tr id="gr_svn7768_483"
><td id="483"><a href="#483">483</a></td></tr
><tr id="gr_svn7768_484"
><td id="484"><a href="#484">484</a></td></tr
><tr id="gr_svn7768_485"
><td id="485"><a href="#485">485</a></td></tr
><tr id="gr_svn7768_486"
><td id="486"><a href="#486">486</a></td></tr
><tr id="gr_svn7768_487"
><td id="487"><a href="#487">487</a></td></tr
><tr id="gr_svn7768_488"
><td id="488"><a href="#488">488</a></td></tr
><tr id="gr_svn7768_489"
><td id="489"><a href="#489">489</a></td></tr
><tr id="gr_svn7768_490"
><td id="490"><a href="#490">490</a></td></tr
><tr id="gr_svn7768_491"
><td id="491"><a href="#491">491</a></td></tr
><tr id="gr_svn7768_492"
><td id="492"><a href="#492">492</a></td></tr
><tr id="gr_svn7768_493"
><td id="493"><a href="#493">493</a></td></tr
><tr id="gr_svn7768_494"
><td id="494"><a href="#494">494</a></td></tr
><tr id="gr_svn7768_495"
><td id="495"><a href="#495">495</a></td></tr
><tr id="gr_svn7768_496"
><td id="496"><a href="#496">496</a></td></tr
><tr id="gr_svn7768_497"
><td id="497"><a href="#497">497</a></td></tr
><tr id="gr_svn7768_498"
><td id="498"><a href="#498">498</a></td></tr
><tr id="gr_svn7768_499"
><td id="499"><a href="#499">499</a></td></tr
><tr id="gr_svn7768_500"
><td id="500"><a href="#500">500</a></td></tr
><tr id="gr_svn7768_501"
><td id="501"><a href="#501">501</a></td></tr
><tr id="gr_svn7768_502"
><td id="502"><a href="#502">502</a></td></tr
><tr id="gr_svn7768_503"
><td id="503"><a href="#503">503</a></td></tr
><tr id="gr_svn7768_504"
><td id="504"><a href="#504">504</a></td></tr
><tr id="gr_svn7768_505"
><td id="505"><a href="#505">505</a></td></tr
><tr id="gr_svn7768_506"
><td id="506"><a href="#506">506</a></td></tr
><tr id="gr_svn7768_507"
><td id="507"><a href="#507">507</a></td></tr
><tr id="gr_svn7768_508"
><td id="508"><a href="#508">508</a></td></tr
><tr id="gr_svn7768_509"
><td id="509"><a href="#509">509</a></td></tr
><tr id="gr_svn7768_510"
><td id="510"><a href="#510">510</a></td></tr
><tr id="gr_svn7768_511"
><td id="511"><a href="#511">511</a></td></tr
><tr id="gr_svn7768_512"
><td id="512"><a href="#512">512</a></td></tr
><tr id="gr_svn7768_513"
><td id="513"><a href="#513">513</a></td></tr
><tr id="gr_svn7768_514"
><td id="514"><a href="#514">514</a></td></tr
><tr id="gr_svn7768_515"
><td id="515"><a href="#515">515</a></td></tr
><tr id="gr_svn7768_516"
><td id="516"><a href="#516">516</a></td></tr
><tr id="gr_svn7768_517"
><td id="517"><a href="#517">517</a></td></tr
><tr id="gr_svn7768_518"
><td id="518"><a href="#518">518</a></td></tr
><tr id="gr_svn7768_519"
><td id="519"><a href="#519">519</a></td></tr
><tr id="gr_svn7768_520"
><td id="520"><a href="#520">520</a></td></tr
><tr id="gr_svn7768_521"
><td id="521"><a href="#521">521</a></td></tr
><tr id="gr_svn7768_522"
><td id="522"><a href="#522">522</a></td></tr
><tr id="gr_svn7768_523"
><td id="523"><a href="#523">523</a></td></tr
><tr id="gr_svn7768_524"
><td id="524"><a href="#524">524</a></td></tr
><tr id="gr_svn7768_525"
><td id="525"><a href="#525">525</a></td></tr
><tr id="gr_svn7768_526"
><td id="526"><a href="#526">526</a></td></tr
><tr id="gr_svn7768_527"
><td id="527"><a href="#527">527</a></td></tr
><tr id="gr_svn7768_528"
><td id="528"><a href="#528">528</a></td></tr
><tr id="gr_svn7768_529"
><td id="529"><a href="#529">529</a></td></tr
><tr id="gr_svn7768_530"
><td id="530"><a href="#530">530</a></td></tr
><tr id="gr_svn7768_531"
><td id="531"><a href="#531">531</a></td></tr
><tr id="gr_svn7768_532"
><td id="532"><a href="#532">532</a></td></tr
><tr id="gr_svn7768_533"
><td id="533"><a href="#533">533</a></td></tr
><tr id="gr_svn7768_534"
><td id="534"><a href="#534">534</a></td></tr
><tr id="gr_svn7768_535"
><td id="535"><a href="#535">535</a></td></tr
><tr id="gr_svn7768_536"
><td id="536"><a href="#536">536</a></td></tr
><tr id="gr_svn7768_537"
><td id="537"><a href="#537">537</a></td></tr
><tr id="gr_svn7768_538"
><td id="538"><a href="#538">538</a></td></tr
><tr id="gr_svn7768_539"
><td id="539"><a href="#539">539</a></td></tr
><tr id="gr_svn7768_540"
><td id="540"><a href="#540">540</a></td></tr
><tr id="gr_svn7768_541"
><td id="541"><a href="#541">541</a></td></tr
><tr id="gr_svn7768_542"
><td id="542"><a href="#542">542</a></td></tr
><tr id="gr_svn7768_543"
><td id="543"><a href="#543">543</a></td></tr
><tr id="gr_svn7768_544"
><td id="544"><a href="#544">544</a></td></tr
><tr id="gr_svn7768_545"
><td id="545"><a href="#545">545</a></td></tr
><tr id="gr_svn7768_546"
><td id="546"><a href="#546">546</a></td></tr
><tr id="gr_svn7768_547"
><td id="547"><a href="#547">547</a></td></tr
><tr id="gr_svn7768_548"
><td id="548"><a href="#548">548</a></td></tr
><tr id="gr_svn7768_549"
><td id="549"><a href="#549">549</a></td></tr
><tr id="gr_svn7768_550"
><td id="550"><a href="#550">550</a></td></tr
><tr id="gr_svn7768_551"
><td id="551"><a href="#551">551</a></td></tr
><tr id="gr_svn7768_552"
><td id="552"><a href="#552">552</a></td></tr
><tr id="gr_svn7768_553"
><td id="553"><a href="#553">553</a></td></tr
><tr id="gr_svn7768_554"
><td id="554"><a href="#554">554</a></td></tr
><tr id="gr_svn7768_555"
><td id="555"><a href="#555">555</a></td></tr
><tr id="gr_svn7768_556"
><td id="556"><a href="#556">556</a></td></tr
><tr id="gr_svn7768_557"
><td id="557"><a href="#557">557</a></td></tr
><tr id="gr_svn7768_558"
><td id="558"><a href="#558">558</a></td></tr
><tr id="gr_svn7768_559"
><td id="559"><a href="#559">559</a></td></tr
><tr id="gr_svn7768_560"
><td id="560"><a href="#560">560</a></td></tr
><tr id="gr_svn7768_561"
><td id="561"><a href="#561">561</a></td></tr
><tr id="gr_svn7768_562"
><td id="562"><a href="#562">562</a></td></tr
><tr id="gr_svn7768_563"
><td id="563"><a href="#563">563</a></td></tr
><tr id="gr_svn7768_564"
><td id="564"><a href="#564">564</a></td></tr
><tr id="gr_svn7768_565"
><td id="565"><a href="#565">565</a></td></tr
><tr id="gr_svn7768_566"
><td id="566"><a href="#566">566</a></td></tr
><tr id="gr_svn7768_567"
><td id="567"><a href="#567">567</a></td></tr
><tr id="gr_svn7768_568"
><td id="568"><a href="#568">568</a></td></tr
><tr id="gr_svn7768_569"
><td id="569"><a href="#569">569</a></td></tr
><tr id="gr_svn7768_570"
><td id="570"><a href="#570">570</a></td></tr
><tr id="gr_svn7768_571"
><td id="571"><a href="#571">571</a></td></tr
><tr id="gr_svn7768_572"
><td id="572"><a href="#572">572</a></td></tr
><tr id="gr_svn7768_573"
><td id="573"><a href="#573">573</a></td></tr
><tr id="gr_svn7768_574"
><td id="574"><a href="#574">574</a></td></tr
><tr id="gr_svn7768_575"
><td id="575"><a href="#575">575</a></td></tr
><tr id="gr_svn7768_576"
><td id="576"><a href="#576">576</a></td></tr
><tr id="gr_svn7768_577"
><td id="577"><a href="#577">577</a></td></tr
><tr id="gr_svn7768_578"
><td id="578"><a href="#578">578</a></td></tr
><tr id="gr_svn7768_579"
><td id="579"><a href="#579">579</a></td></tr
><tr id="gr_svn7768_580"
><td id="580"><a href="#580">580</a></td></tr
><tr id="gr_svn7768_581"
><td id="581"><a href="#581">581</a></td></tr
><tr id="gr_svn7768_582"
><td id="582"><a href="#582">582</a></td></tr
><tr id="gr_svn7768_583"
><td id="583"><a href="#583">583</a></td></tr
><tr id="gr_svn7768_584"
><td id="584"><a href="#584">584</a></td></tr
><tr id="gr_svn7768_585"
><td id="585"><a href="#585">585</a></td></tr
><tr id="gr_svn7768_586"
><td id="586"><a href="#586">586</a></td></tr
><tr id="gr_svn7768_587"
><td id="587"><a href="#587">587</a></td></tr
><tr id="gr_svn7768_588"
><td id="588"><a href="#588">588</a></td></tr
><tr id="gr_svn7768_589"
><td id="589"><a href="#589">589</a></td></tr
><tr id="gr_svn7768_590"
><td id="590"><a href="#590">590</a></td></tr
><tr id="gr_svn7768_591"
><td id="591"><a href="#591">591</a></td></tr
><tr id="gr_svn7768_592"
><td id="592"><a href="#592">592</a></td></tr
><tr id="gr_svn7768_593"
><td id="593"><a href="#593">593</a></td></tr
><tr id="gr_svn7768_594"
><td id="594"><a href="#594">594</a></td></tr
><tr id="gr_svn7768_595"
><td id="595"><a href="#595">595</a></td></tr
><tr id="gr_svn7768_596"
><td id="596"><a href="#596">596</a></td></tr
><tr id="gr_svn7768_597"
><td id="597"><a href="#597">597</a></td></tr
><tr id="gr_svn7768_598"
><td id="598"><a href="#598">598</a></td></tr
><tr id="gr_svn7768_599"
><td id="599"><a href="#599">599</a></td></tr
><tr id="gr_svn7768_600"
><td id="600"><a href="#600">600</a></td></tr
><tr id="gr_svn7768_601"
><td id="601"><a href="#601">601</a></td></tr
><tr id="gr_svn7768_602"
><td id="602"><a href="#602">602</a></td></tr
><tr id="gr_svn7768_603"
><td id="603"><a href="#603">603</a></td></tr
><tr id="gr_svn7768_604"
><td id="604"><a href="#604">604</a></td></tr
><tr id="gr_svn7768_605"
><td id="605"><a href="#605">605</a></td></tr
><tr id="gr_svn7768_606"
><td id="606"><a href="#606">606</a></td></tr
><tr id="gr_svn7768_607"
><td id="607"><a href="#607">607</a></td></tr
><tr id="gr_svn7768_608"
><td id="608"><a href="#608">608</a></td></tr
><tr id="gr_svn7768_609"
><td id="609"><a href="#609">609</a></td></tr
><tr id="gr_svn7768_610"
><td id="610"><a href="#610">610</a></td></tr
><tr id="gr_svn7768_611"
><td id="611"><a href="#611">611</a></td></tr
><tr id="gr_svn7768_612"
><td id="612"><a href="#612">612</a></td></tr
><tr id="gr_svn7768_613"
><td id="613"><a href="#613">613</a></td></tr
><tr id="gr_svn7768_614"
><td id="614"><a href="#614">614</a></td></tr
><tr id="gr_svn7768_615"
><td id="615"><a href="#615">615</a></td></tr
><tr id="gr_svn7768_616"
><td id="616"><a href="#616">616</a></td></tr
><tr id="gr_svn7768_617"
><td id="617"><a href="#617">617</a></td></tr
><tr id="gr_svn7768_618"
><td id="618"><a href="#618">618</a></td></tr
><tr id="gr_svn7768_619"
><td id="619"><a href="#619">619</a></td></tr
><tr id="gr_svn7768_620"
><td id="620"><a href="#620">620</a></td></tr
><tr id="gr_svn7768_621"
><td id="621"><a href="#621">621</a></td></tr
><tr id="gr_svn7768_622"
><td id="622"><a href="#622">622</a></td></tr
><tr id="gr_svn7768_623"
><td id="623"><a href="#623">623</a></td></tr
><tr id="gr_svn7768_624"
><td id="624"><a href="#624">624</a></td></tr
><tr id="gr_svn7768_625"
><td id="625"><a href="#625">625</a></td></tr
><tr id="gr_svn7768_626"
><td id="626"><a href="#626">626</a></td></tr
><tr id="gr_svn7768_627"
><td id="627"><a href="#627">627</a></td></tr
><tr id="gr_svn7768_628"
><td id="628"><a href="#628">628</a></td></tr
><tr id="gr_svn7768_629"
><td id="629"><a href="#629">629</a></td></tr
><tr id="gr_svn7768_630"
><td id="630"><a href="#630">630</a></td></tr
><tr id="gr_svn7768_631"
><td id="631"><a href="#631">631</a></td></tr
><tr id="gr_svn7768_632"
><td id="632"><a href="#632">632</a></td></tr
><tr id="gr_svn7768_633"
><td id="633"><a href="#633">633</a></td></tr
><tr id="gr_svn7768_634"
><td id="634"><a href="#634">634</a></td></tr
><tr id="gr_svn7768_635"
><td id="635"><a href="#635">635</a></td></tr
><tr id="gr_svn7768_636"
><td id="636"><a href="#636">636</a></td></tr
><tr id="gr_svn7768_637"
><td id="637"><a href="#637">637</a></td></tr
><tr id="gr_svn7768_638"
><td id="638"><a href="#638">638</a></td></tr
><tr id="gr_svn7768_639"
><td id="639"><a href="#639">639</a></td></tr
><tr id="gr_svn7768_640"
><td id="640"><a href="#640">640</a></td></tr
><tr id="gr_svn7768_641"
><td id="641"><a href="#641">641</a></td></tr
><tr id="gr_svn7768_642"
><td id="642"><a href="#642">642</a></td></tr
><tr id="gr_svn7768_643"
><td id="643"><a href="#643">643</a></td></tr
><tr id="gr_svn7768_644"
><td id="644"><a href="#644">644</a></td></tr
><tr id="gr_svn7768_645"
><td id="645"><a href="#645">645</a></td></tr
><tr id="gr_svn7768_646"
><td id="646"><a href="#646">646</a></td></tr
><tr id="gr_svn7768_647"
><td id="647"><a href="#647">647</a></td></tr
><tr id="gr_svn7768_648"
><td id="648"><a href="#648">648</a></td></tr
><tr id="gr_svn7768_649"
><td id="649"><a href="#649">649</a></td></tr
><tr id="gr_svn7768_650"
><td id="650"><a href="#650">650</a></td></tr
><tr id="gr_svn7768_651"
><td id="651"><a href="#651">651</a></td></tr
><tr id="gr_svn7768_652"
><td id="652"><a href="#652">652</a></td></tr
><tr id="gr_svn7768_653"
><td id="653"><a href="#653">653</a></td></tr
><tr id="gr_svn7768_654"
><td id="654"><a href="#654">654</a></td></tr
><tr id="gr_svn7768_655"
><td id="655"><a href="#655">655</a></td></tr
><tr id="gr_svn7768_656"
><td id="656"><a href="#656">656</a></td></tr
><tr id="gr_svn7768_657"
><td id="657"><a href="#657">657</a></td></tr
><tr id="gr_svn7768_658"
><td id="658"><a href="#658">658</a></td></tr
><tr id="gr_svn7768_659"
><td id="659"><a href="#659">659</a></td></tr
><tr id="gr_svn7768_660"
><td id="660"><a href="#660">660</a></td></tr
><tr id="gr_svn7768_661"
><td id="661"><a href="#661">661</a></td></tr
><tr id="gr_svn7768_662"
><td id="662"><a href="#662">662</a></td></tr
><tr id="gr_svn7768_663"
><td id="663"><a href="#663">663</a></td></tr
><tr id="gr_svn7768_664"
><td id="664"><a href="#664">664</a></td></tr
><tr id="gr_svn7768_665"
><td id="665"><a href="#665">665</a></td></tr
><tr id="gr_svn7768_666"
><td id="666"><a href="#666">666</a></td></tr
><tr id="gr_svn7768_667"
><td id="667"><a href="#667">667</a></td></tr
><tr id="gr_svn7768_668"
><td id="668"><a href="#668">668</a></td></tr
><tr id="gr_svn7768_669"
><td id="669"><a href="#669">669</a></td></tr
><tr id="gr_svn7768_670"
><td id="670"><a href="#670">670</a></td></tr
><tr id="gr_svn7768_671"
><td id="671"><a href="#671">671</a></td></tr
><tr id="gr_svn7768_672"
><td id="672"><a href="#672">672</a></td></tr
><tr id="gr_svn7768_673"
><td id="673"><a href="#673">673</a></td></tr
><tr id="gr_svn7768_674"
><td id="674"><a href="#674">674</a></td></tr
><tr id="gr_svn7768_675"
><td id="675"><a href="#675">675</a></td></tr
><tr id="gr_svn7768_676"
><td id="676"><a href="#676">676</a></td></tr
><tr id="gr_svn7768_677"
><td id="677"><a href="#677">677</a></td></tr
><tr id="gr_svn7768_678"
><td id="678"><a href="#678">678</a></td></tr
><tr id="gr_svn7768_679"
><td id="679"><a href="#679">679</a></td></tr
><tr id="gr_svn7768_680"
><td id="680"><a href="#680">680</a></td></tr
><tr id="gr_svn7768_681"
><td id="681"><a href="#681">681</a></td></tr
><tr id="gr_svn7768_682"
><td id="682"><a href="#682">682</a></td></tr
><tr id="gr_svn7768_683"
><td id="683"><a href="#683">683</a></td></tr
><tr id="gr_svn7768_684"
><td id="684"><a href="#684">684</a></td></tr
><tr id="gr_svn7768_685"
><td id="685"><a href="#685">685</a></td></tr
><tr id="gr_svn7768_686"
><td id="686"><a href="#686">686</a></td></tr
><tr id="gr_svn7768_687"
><td id="687"><a href="#687">687</a></td></tr
><tr id="gr_svn7768_688"
><td id="688"><a href="#688">688</a></td></tr
><tr id="gr_svn7768_689"
><td id="689"><a href="#689">689</a></td></tr
><tr id="gr_svn7768_690"
><td id="690"><a href="#690">690</a></td></tr
><tr id="gr_svn7768_691"
><td id="691"><a href="#691">691</a></td></tr
><tr id="gr_svn7768_692"
><td id="692"><a href="#692">692</a></td></tr
><tr id="gr_svn7768_693"
><td id="693"><a href="#693">693</a></td></tr
><tr id="gr_svn7768_694"
><td id="694"><a href="#694">694</a></td></tr
><tr id="gr_svn7768_695"
><td id="695"><a href="#695">695</a></td></tr
><tr id="gr_svn7768_696"
><td id="696"><a href="#696">696</a></td></tr
><tr id="gr_svn7768_697"
><td id="697"><a href="#697">697</a></td></tr
><tr id="gr_svn7768_698"
><td id="698"><a href="#698">698</a></td></tr
><tr id="gr_svn7768_699"
><td id="699"><a href="#699">699</a></td></tr
><tr id="gr_svn7768_700"
><td id="700"><a href="#700">700</a></td></tr
><tr id="gr_svn7768_701"
><td id="701"><a href="#701">701</a></td></tr
><tr id="gr_svn7768_702"
><td id="702"><a href="#702">702</a></td></tr
><tr id="gr_svn7768_703"
><td id="703"><a href="#703">703</a></td></tr
><tr id="gr_svn7768_704"
><td id="704"><a href="#704">704</a></td></tr
><tr id="gr_svn7768_705"
><td id="705"><a href="#705">705</a></td></tr
><tr id="gr_svn7768_706"
><td id="706"><a href="#706">706</a></td></tr
><tr id="gr_svn7768_707"
><td id="707"><a href="#707">707</a></td></tr
><tr id="gr_svn7768_708"
><td id="708"><a href="#708">708</a></td></tr
><tr id="gr_svn7768_709"
><td id="709"><a href="#709">709</a></td></tr
><tr id="gr_svn7768_710"
><td id="710"><a href="#710">710</a></td></tr
><tr id="gr_svn7768_711"
><td id="711"><a href="#711">711</a></td></tr
><tr id="gr_svn7768_712"
><td id="712"><a href="#712">712</a></td></tr
><tr id="gr_svn7768_713"
><td id="713"><a href="#713">713</a></td></tr
><tr id="gr_svn7768_714"
><td id="714"><a href="#714">714</a></td></tr
><tr id="gr_svn7768_715"
><td id="715"><a href="#715">715</a></td></tr
><tr id="gr_svn7768_716"
><td id="716"><a href="#716">716</a></td></tr
><tr id="gr_svn7768_717"
><td id="717"><a href="#717">717</a></td></tr
><tr id="gr_svn7768_718"
><td id="718"><a href="#718">718</a></td></tr
><tr id="gr_svn7768_719"
><td id="719"><a href="#719">719</a></td></tr
><tr id="gr_svn7768_720"
><td id="720"><a href="#720">720</a></td></tr
><tr id="gr_svn7768_721"
><td id="721"><a href="#721">721</a></td></tr
><tr id="gr_svn7768_722"
><td id="722"><a href="#722">722</a></td></tr
><tr id="gr_svn7768_723"
><td id="723"><a href="#723">723</a></td></tr
><tr id="gr_svn7768_724"
><td id="724"><a href="#724">724</a></td></tr
><tr id="gr_svn7768_725"
><td id="725"><a href="#725">725</a></td></tr
><tr id="gr_svn7768_726"
><td id="726"><a href="#726">726</a></td></tr
><tr id="gr_svn7768_727"
><td id="727"><a href="#727">727</a></td></tr
><tr id="gr_svn7768_728"
><td id="728"><a href="#728">728</a></td></tr
><tr id="gr_svn7768_729"
><td id="729"><a href="#729">729</a></td></tr
><tr id="gr_svn7768_730"
><td id="730"><a href="#730">730</a></td></tr
><tr id="gr_svn7768_731"
><td id="731"><a href="#731">731</a></td></tr
><tr id="gr_svn7768_732"
><td id="732"><a href="#732">732</a></td></tr
><tr id="gr_svn7768_733"
><td id="733"><a href="#733">733</a></td></tr
><tr id="gr_svn7768_734"
><td id="734"><a href="#734">734</a></td></tr
><tr id="gr_svn7768_735"
><td id="735"><a href="#735">735</a></td></tr
><tr id="gr_svn7768_736"
><td id="736"><a href="#736">736</a></td></tr
><tr id="gr_svn7768_737"
><td id="737"><a href="#737">737</a></td></tr
><tr id="gr_svn7768_738"
><td id="738"><a href="#738">738</a></td></tr
><tr id="gr_svn7768_739"
><td id="739"><a href="#739">739</a></td></tr
><tr id="gr_svn7768_740"
><td id="740"><a href="#740">740</a></td></tr
><tr id="gr_svn7768_741"
><td id="741"><a href="#741">741</a></td></tr
><tr id="gr_svn7768_742"
><td id="742"><a href="#742">742</a></td></tr
><tr id="gr_svn7768_743"
><td id="743"><a href="#743">743</a></td></tr
><tr id="gr_svn7768_744"
><td id="744"><a href="#744">744</a></td></tr
><tr id="gr_svn7768_745"
><td id="745"><a href="#745">745</a></td></tr
><tr id="gr_svn7768_746"
><td id="746"><a href="#746">746</a></td></tr
><tr id="gr_svn7768_747"
><td id="747"><a href="#747">747</a></td></tr
><tr id="gr_svn7768_748"
><td id="748"><a href="#748">748</a></td></tr
><tr id="gr_svn7768_749"
><td id="749"><a href="#749">749</a></td></tr
><tr id="gr_svn7768_750"
><td id="750"><a href="#750">750</a></td></tr
><tr id="gr_svn7768_751"
><td id="751"><a href="#751">751</a></td></tr
><tr id="gr_svn7768_752"
><td id="752"><a href="#752">752</a></td></tr
><tr id="gr_svn7768_753"
><td id="753"><a href="#753">753</a></td></tr
><tr id="gr_svn7768_754"
><td id="754"><a href="#754">754</a></td></tr
><tr id="gr_svn7768_755"
><td id="755"><a href="#755">755</a></td></tr
><tr id="gr_svn7768_756"
><td id="756"><a href="#756">756</a></td></tr
><tr id="gr_svn7768_757"
><td id="757"><a href="#757">757</a></td></tr
><tr id="gr_svn7768_758"
><td id="758"><a href="#758">758</a></td></tr
><tr id="gr_svn7768_759"
><td id="759"><a href="#759">759</a></td></tr
><tr id="gr_svn7768_760"
><td id="760"><a href="#760">760</a></td></tr
><tr id="gr_svn7768_761"
><td id="761"><a href="#761">761</a></td></tr
><tr id="gr_svn7768_762"
><td id="762"><a href="#762">762</a></td></tr
><tr id="gr_svn7768_763"
><td id="763"><a href="#763">763</a></td></tr
><tr id="gr_svn7768_764"
><td id="764"><a href="#764">764</a></td></tr
><tr id="gr_svn7768_765"
><td id="765"><a href="#765">765</a></td></tr
><tr id="gr_svn7768_766"
><td id="766"><a href="#766">766</a></td></tr
><tr id="gr_svn7768_767"
><td id="767"><a href="#767">767</a></td></tr
><tr id="gr_svn7768_768"
><td id="768"><a href="#768">768</a></td></tr
><tr id="gr_svn7768_769"
><td id="769"><a href="#769">769</a></td></tr
><tr id="gr_svn7768_770"
><td id="770"><a href="#770">770</a></td></tr
><tr id="gr_svn7768_771"
><td id="771"><a href="#771">771</a></td></tr
><tr id="gr_svn7768_772"
><td id="772"><a href="#772">772</a></td></tr
><tr id="gr_svn7768_773"
><td id="773"><a href="#773">773</a></td></tr
><tr id="gr_svn7768_774"
><td id="774"><a href="#774">774</a></td></tr
><tr id="gr_svn7768_775"
><td id="775"><a href="#775">775</a></td></tr
><tr id="gr_svn7768_776"
><td id="776"><a href="#776">776</a></td></tr
><tr id="gr_svn7768_777"
><td id="777"><a href="#777">777</a></td></tr
><tr id="gr_svn7768_778"
><td id="778"><a href="#778">778</a></td></tr
><tr id="gr_svn7768_779"
><td id="779"><a href="#779">779</a></td></tr
><tr id="gr_svn7768_780"
><td id="780"><a href="#780">780</a></td></tr
><tr id="gr_svn7768_781"
><td id="781"><a href="#781">781</a></td></tr
><tr id="gr_svn7768_782"
><td id="782"><a href="#782">782</a></td></tr
><tr id="gr_svn7768_783"
><td id="783"><a href="#783">783</a></td></tr
><tr id="gr_svn7768_784"
><td id="784"><a href="#784">784</a></td></tr
><tr id="gr_svn7768_785"
><td id="785"><a href="#785">785</a></td></tr
><tr id="gr_svn7768_786"
><td id="786"><a href="#786">786</a></td></tr
><tr id="gr_svn7768_787"
><td id="787"><a href="#787">787</a></td></tr
><tr id="gr_svn7768_788"
><td id="788"><a href="#788">788</a></td></tr
><tr id="gr_svn7768_789"
><td id="789"><a href="#789">789</a></td></tr
><tr id="gr_svn7768_790"
><td id="790"><a href="#790">790</a></td></tr
><tr id="gr_svn7768_791"
><td id="791"><a href="#791">791</a></td></tr
><tr id="gr_svn7768_792"
><td id="792"><a href="#792">792</a></td></tr
><tr id="gr_svn7768_793"
><td id="793"><a href="#793">793</a></td></tr
><tr id="gr_svn7768_794"
><td id="794"><a href="#794">794</a></td></tr
><tr id="gr_svn7768_795"
><td id="795"><a href="#795">795</a></td></tr
><tr id="gr_svn7768_796"
><td id="796"><a href="#796">796</a></td></tr
><tr id="gr_svn7768_797"
><td id="797"><a href="#797">797</a></td></tr
><tr id="gr_svn7768_798"
><td id="798"><a href="#798">798</a></td></tr
><tr id="gr_svn7768_799"
><td id="799"><a href="#799">799</a></td></tr
><tr id="gr_svn7768_800"
><td id="800"><a href="#800">800</a></td></tr
><tr id="gr_svn7768_801"
><td id="801"><a href="#801">801</a></td></tr
><tr id="gr_svn7768_802"
><td id="802"><a href="#802">802</a></td></tr
><tr id="gr_svn7768_803"
><td id="803"><a href="#803">803</a></td></tr
><tr id="gr_svn7768_804"
><td id="804"><a href="#804">804</a></td></tr
><tr id="gr_svn7768_805"
><td id="805"><a href="#805">805</a></td></tr
><tr id="gr_svn7768_806"
><td id="806"><a href="#806">806</a></td></tr
><tr id="gr_svn7768_807"
><td id="807"><a href="#807">807</a></td></tr
><tr id="gr_svn7768_808"
><td id="808"><a href="#808">808</a></td></tr
><tr id="gr_svn7768_809"
><td id="809"><a href="#809">809</a></td></tr
><tr id="gr_svn7768_810"
><td id="810"><a href="#810">810</a></td></tr
><tr id="gr_svn7768_811"
><td id="811"><a href="#811">811</a></td></tr
><tr id="gr_svn7768_812"
><td id="812"><a href="#812">812</a></td></tr
><tr id="gr_svn7768_813"
><td id="813"><a href="#813">813</a></td></tr
><tr id="gr_svn7768_814"
><td id="814"><a href="#814">814</a></td></tr
><tr id="gr_svn7768_815"
><td id="815"><a href="#815">815</a></td></tr
><tr id="gr_svn7768_816"
><td id="816"><a href="#816">816</a></td></tr
><tr id="gr_svn7768_817"
><td id="817"><a href="#817">817</a></td></tr
><tr id="gr_svn7768_818"
><td id="818"><a href="#818">818</a></td></tr
><tr id="gr_svn7768_819"
><td id="819"><a href="#819">819</a></td></tr
><tr id="gr_svn7768_820"
><td id="820"><a href="#820">820</a></td></tr
><tr id="gr_svn7768_821"
><td id="821"><a href="#821">821</a></td></tr
><tr id="gr_svn7768_822"
><td id="822"><a href="#822">822</a></td></tr
><tr id="gr_svn7768_823"
><td id="823"><a href="#823">823</a></td></tr
><tr id="gr_svn7768_824"
><td id="824"><a href="#824">824</a></td></tr
><tr id="gr_svn7768_825"
><td id="825"><a href="#825">825</a></td></tr
><tr id="gr_svn7768_826"
><td id="826"><a href="#826">826</a></td></tr
><tr id="gr_svn7768_827"
><td id="827"><a href="#827">827</a></td></tr
><tr id="gr_svn7768_828"
><td id="828"><a href="#828">828</a></td></tr
><tr id="gr_svn7768_829"
><td id="829"><a href="#829">829</a></td></tr
><tr id="gr_svn7768_830"
><td id="830"><a href="#830">830</a></td></tr
><tr id="gr_svn7768_831"
><td id="831"><a href="#831">831</a></td></tr
><tr id="gr_svn7768_832"
><td id="832"><a href="#832">832</a></td></tr
><tr id="gr_svn7768_833"
><td id="833"><a href="#833">833</a></td></tr
><tr id="gr_svn7768_834"
><td id="834"><a href="#834">834</a></td></tr
><tr id="gr_svn7768_835"
><td id="835"><a href="#835">835</a></td></tr
><tr id="gr_svn7768_836"
><td id="836"><a href="#836">836</a></td></tr
><tr id="gr_svn7768_837"
><td id="837"><a href="#837">837</a></td></tr
><tr id="gr_svn7768_838"
><td id="838"><a href="#838">838</a></td></tr
><tr id="gr_svn7768_839"
><td id="839"><a href="#839">839</a></td></tr
><tr id="gr_svn7768_840"
><td id="840"><a href="#840">840</a></td></tr
><tr id="gr_svn7768_841"
><td id="841"><a href="#841">841</a></td></tr
><tr id="gr_svn7768_842"
><td id="842"><a href="#842">842</a></td></tr
><tr id="gr_svn7768_843"
><td id="843"><a href="#843">843</a></td></tr
><tr id="gr_svn7768_844"
><td id="844"><a href="#844">844</a></td></tr
><tr id="gr_svn7768_845"
><td id="845"><a href="#845">845</a></td></tr
><tr id="gr_svn7768_846"
><td id="846"><a href="#846">846</a></td></tr
><tr id="gr_svn7768_847"
><td id="847"><a href="#847">847</a></td></tr
><tr id="gr_svn7768_848"
><td id="848"><a href="#848">848</a></td></tr
><tr id="gr_svn7768_849"
><td id="849"><a href="#849">849</a></td></tr
><tr id="gr_svn7768_850"
><td id="850"><a href="#850">850</a></td></tr
><tr id="gr_svn7768_851"
><td id="851"><a href="#851">851</a></td></tr
><tr id="gr_svn7768_852"
><td id="852"><a href="#852">852</a></td></tr
><tr id="gr_svn7768_853"
><td id="853"><a href="#853">853</a></td></tr
><tr id="gr_svn7768_854"
><td id="854"><a href="#854">854</a></td></tr
><tr id="gr_svn7768_855"
><td id="855"><a href="#855">855</a></td></tr
><tr id="gr_svn7768_856"
><td id="856"><a href="#856">856</a></td></tr
><tr id="gr_svn7768_857"
><td id="857"><a href="#857">857</a></td></tr
><tr id="gr_svn7768_858"
><td id="858"><a href="#858">858</a></td></tr
><tr id="gr_svn7768_859"
><td id="859"><a href="#859">859</a></td></tr
><tr id="gr_svn7768_860"
><td id="860"><a href="#860">860</a></td></tr
><tr id="gr_svn7768_861"
><td id="861"><a href="#861">861</a></td></tr
><tr id="gr_svn7768_862"
><td id="862"><a href="#862">862</a></td></tr
><tr id="gr_svn7768_863"
><td id="863"><a href="#863">863</a></td></tr
><tr id="gr_svn7768_864"
><td id="864"><a href="#864">864</a></td></tr
><tr id="gr_svn7768_865"
><td id="865"><a href="#865">865</a></td></tr
><tr id="gr_svn7768_866"
><td id="866"><a href="#866">866</a></td></tr
><tr id="gr_svn7768_867"
><td id="867"><a href="#867">867</a></td></tr
><tr id="gr_svn7768_868"
><td id="868"><a href="#868">868</a></td></tr
><tr id="gr_svn7768_869"
><td id="869"><a href="#869">869</a></td></tr
><tr id="gr_svn7768_870"
><td id="870"><a href="#870">870</a></td></tr
><tr id="gr_svn7768_871"
><td id="871"><a href="#871">871</a></td></tr
><tr id="gr_svn7768_872"
><td id="872"><a href="#872">872</a></td></tr
><tr id="gr_svn7768_873"
><td id="873"><a href="#873">873</a></td></tr
><tr id="gr_svn7768_874"
><td id="874"><a href="#874">874</a></td></tr
><tr id="gr_svn7768_875"
><td id="875"><a href="#875">875</a></td></tr
><tr id="gr_svn7768_876"
><td id="876"><a href="#876">876</a></td></tr
><tr id="gr_svn7768_877"
><td id="877"><a href="#877">877</a></td></tr
><tr id="gr_svn7768_878"
><td id="878"><a href="#878">878</a></td></tr
><tr id="gr_svn7768_879"
><td id="879"><a href="#879">879</a></td></tr
><tr id="gr_svn7768_880"
><td id="880"><a href="#880">880</a></td></tr
><tr id="gr_svn7768_881"
><td id="881"><a href="#881">881</a></td></tr
><tr id="gr_svn7768_882"
><td id="882"><a href="#882">882</a></td></tr
><tr id="gr_svn7768_883"
><td id="883"><a href="#883">883</a></td></tr
><tr id="gr_svn7768_884"
><td id="884"><a href="#884">884</a></td></tr
><tr id="gr_svn7768_885"
><td id="885"><a href="#885">885</a></td></tr
><tr id="gr_svn7768_886"
><td id="886"><a href="#886">886</a></td></tr
><tr id="gr_svn7768_887"
><td id="887"><a href="#887">887</a></td></tr
><tr id="gr_svn7768_888"
><td id="888"><a href="#888">888</a></td></tr
><tr id="gr_svn7768_889"
><td id="889"><a href="#889">889</a></td></tr
><tr id="gr_svn7768_890"
><td id="890"><a href="#890">890</a></td></tr
><tr id="gr_svn7768_891"
><td id="891"><a href="#891">891</a></td></tr
><tr id="gr_svn7768_892"
><td id="892"><a href="#892">892</a></td></tr
><tr id="gr_svn7768_893"
><td id="893"><a href="#893">893</a></td></tr
><tr id="gr_svn7768_894"
><td id="894"><a href="#894">894</a></td></tr
><tr id="gr_svn7768_895"
><td id="895"><a href="#895">895</a></td></tr
><tr id="gr_svn7768_896"
><td id="896"><a href="#896">896</a></td></tr
><tr id="gr_svn7768_897"
><td id="897"><a href="#897">897</a></td></tr
><tr id="gr_svn7768_898"
><td id="898"><a href="#898">898</a></td></tr
><tr id="gr_svn7768_899"
><td id="899"><a href="#899">899</a></td></tr
><tr id="gr_svn7768_900"
><td id="900"><a href="#900">900</a></td></tr
><tr id="gr_svn7768_901"
><td id="901"><a href="#901">901</a></td></tr
><tr id="gr_svn7768_902"
><td id="902"><a href="#902">902</a></td></tr
><tr id="gr_svn7768_903"
><td id="903"><a href="#903">903</a></td></tr
><tr id="gr_svn7768_904"
><td id="904"><a href="#904">904</a></td></tr
><tr id="gr_svn7768_905"
><td id="905"><a href="#905">905</a></td></tr
><tr id="gr_svn7768_906"
><td id="906"><a href="#906">906</a></td></tr
><tr id="gr_svn7768_907"
><td id="907"><a href="#907">907</a></td></tr
><tr id="gr_svn7768_908"
><td id="908"><a href="#908">908</a></td></tr
><tr id="gr_svn7768_909"
><td id="909"><a href="#909">909</a></td></tr
><tr id="gr_svn7768_910"
><td id="910"><a href="#910">910</a></td></tr
><tr id="gr_svn7768_911"
><td id="911"><a href="#911">911</a></td></tr
><tr id="gr_svn7768_912"
><td id="912"><a href="#912">912</a></td></tr
><tr id="gr_svn7768_913"
><td id="913"><a href="#913">913</a></td></tr
><tr id="gr_svn7768_914"
><td id="914"><a href="#914">914</a></td></tr
><tr id="gr_svn7768_915"
><td id="915"><a href="#915">915</a></td></tr
><tr id="gr_svn7768_916"
><td id="916"><a href="#916">916</a></td></tr
><tr id="gr_svn7768_917"
><td id="917"><a href="#917">917</a></td></tr
><tr id="gr_svn7768_918"
><td id="918"><a href="#918">918</a></td></tr
><tr id="gr_svn7768_919"
><td id="919"><a href="#919">919</a></td></tr
><tr id="gr_svn7768_920"
><td id="920"><a href="#920">920</a></td></tr
><tr id="gr_svn7768_921"
><td id="921"><a href="#921">921</a></td></tr
><tr id="gr_svn7768_922"
><td id="922"><a href="#922">922</a></td></tr
><tr id="gr_svn7768_923"
><td id="923"><a href="#923">923</a></td></tr
><tr id="gr_svn7768_924"
><td id="924"><a href="#924">924</a></td></tr
><tr id="gr_svn7768_925"
><td id="925"><a href="#925">925</a></td></tr
><tr id="gr_svn7768_926"
><td id="926"><a href="#926">926</a></td></tr
><tr id="gr_svn7768_927"
><td id="927"><a href="#927">927</a></td></tr
><tr id="gr_svn7768_928"
><td id="928"><a href="#928">928</a></td></tr
><tr id="gr_svn7768_929"
><td id="929"><a href="#929">929</a></td></tr
><tr id="gr_svn7768_930"
><td id="930"><a href="#930">930</a></td></tr
><tr id="gr_svn7768_931"
><td id="931"><a href="#931">931</a></td></tr
><tr id="gr_svn7768_932"
><td id="932"><a href="#932">932</a></td></tr
><tr id="gr_svn7768_933"
><td id="933"><a href="#933">933</a></td></tr
><tr id="gr_svn7768_934"
><td id="934"><a href="#934">934</a></td></tr
><tr id="gr_svn7768_935"
><td id="935"><a href="#935">935</a></td></tr
><tr id="gr_svn7768_936"
><td id="936"><a href="#936">936</a></td></tr
><tr id="gr_svn7768_937"
><td id="937"><a href="#937">937</a></td></tr
><tr id="gr_svn7768_938"
><td id="938"><a href="#938">938</a></td></tr
><tr id="gr_svn7768_939"
><td id="939"><a href="#939">939</a></td></tr
><tr id="gr_svn7768_940"
><td id="940"><a href="#940">940</a></td></tr
><tr id="gr_svn7768_941"
><td id="941"><a href="#941">941</a></td></tr
><tr id="gr_svn7768_942"
><td id="942"><a href="#942">942</a></td></tr
><tr id="gr_svn7768_943"
><td id="943"><a href="#943">943</a></td></tr
><tr id="gr_svn7768_944"
><td id="944"><a href="#944">944</a></td></tr
><tr id="gr_svn7768_945"
><td id="945"><a href="#945">945</a></td></tr
><tr id="gr_svn7768_946"
><td id="946"><a href="#946">946</a></td></tr
><tr id="gr_svn7768_947"
><td id="947"><a href="#947">947</a></td></tr
><tr id="gr_svn7768_948"
><td id="948"><a href="#948">948</a></td></tr
><tr id="gr_svn7768_949"
><td id="949"><a href="#949">949</a></td></tr
><tr id="gr_svn7768_950"
><td id="950"><a href="#950">950</a></td></tr
><tr id="gr_svn7768_951"
><td id="951"><a href="#951">951</a></td></tr
><tr id="gr_svn7768_952"
><td id="952"><a href="#952">952</a></td></tr
><tr id="gr_svn7768_953"
><td id="953"><a href="#953">953</a></td></tr
><tr id="gr_svn7768_954"
><td id="954"><a href="#954">954</a></td></tr
><tr id="gr_svn7768_955"
><td id="955"><a href="#955">955</a></td></tr
><tr id="gr_svn7768_956"
><td id="956"><a href="#956">956</a></td></tr
><tr id="gr_svn7768_957"
><td id="957"><a href="#957">957</a></td></tr
><tr id="gr_svn7768_958"
><td id="958"><a href="#958">958</a></td></tr
><tr id="gr_svn7768_959"
><td id="959"><a href="#959">959</a></td></tr
><tr id="gr_svn7768_960"
><td id="960"><a href="#960">960</a></td></tr
><tr id="gr_svn7768_961"
><td id="961"><a href="#961">961</a></td></tr
><tr id="gr_svn7768_962"
><td id="962"><a href="#962">962</a></td></tr
><tr id="gr_svn7768_963"
><td id="963"><a href="#963">963</a></td></tr
><tr id="gr_svn7768_964"
><td id="964"><a href="#964">964</a></td></tr
><tr id="gr_svn7768_965"
><td id="965"><a href="#965">965</a></td></tr
><tr id="gr_svn7768_966"
><td id="966"><a href="#966">966</a></td></tr
><tr id="gr_svn7768_967"
><td id="967"><a href="#967">967</a></td></tr
><tr id="gr_svn7768_968"
><td id="968"><a href="#968">968</a></td></tr
><tr id="gr_svn7768_969"
><td id="969"><a href="#969">969</a></td></tr
><tr id="gr_svn7768_970"
><td id="970"><a href="#970">970</a></td></tr
><tr id="gr_svn7768_971"
><td id="971"><a href="#971">971</a></td></tr
><tr id="gr_svn7768_972"
><td id="972"><a href="#972">972</a></td></tr
><tr id="gr_svn7768_973"
><td id="973"><a href="#973">973</a></td></tr
><tr id="gr_svn7768_974"
><td id="974"><a href="#974">974</a></td></tr
><tr id="gr_svn7768_975"
><td id="975"><a href="#975">975</a></td></tr
><tr id="gr_svn7768_976"
><td id="976"><a href="#976">976</a></td></tr
><tr id="gr_svn7768_977"
><td id="977"><a href="#977">977</a></td></tr
><tr id="gr_svn7768_978"
><td id="978"><a href="#978">978</a></td></tr
><tr id="gr_svn7768_979"
><td id="979"><a href="#979">979</a></td></tr
><tr id="gr_svn7768_980"
><td id="980"><a href="#980">980</a></td></tr
><tr id="gr_svn7768_981"
><td id="981"><a href="#981">981</a></td></tr
><tr id="gr_svn7768_982"
><td id="982"><a href="#982">982</a></td></tr
><tr id="gr_svn7768_983"
><td id="983"><a href="#983">983</a></td></tr
><tr id="gr_svn7768_984"
><td id="984"><a href="#984">984</a></td></tr
><tr id="gr_svn7768_985"
><td id="985"><a href="#985">985</a></td></tr
><tr id="gr_svn7768_986"
><td id="986"><a href="#986">986</a></td></tr
><tr id="gr_svn7768_987"
><td id="987"><a href="#987">987</a></td></tr
><tr id="gr_svn7768_988"
><td id="988"><a href="#988">988</a></td></tr
><tr id="gr_svn7768_989"
><td id="989"><a href="#989">989</a></td></tr
><tr id="gr_svn7768_990"
><td id="990"><a href="#990">990</a></td></tr
><tr id="gr_svn7768_991"
><td id="991"><a href="#991">991</a></td></tr
><tr id="gr_svn7768_992"
><td id="992"><a href="#992">992</a></td></tr
><tr id="gr_svn7768_993"
><td id="993"><a href="#993">993</a></td></tr
><tr id="gr_svn7768_994"
><td id="994"><a href="#994">994</a></td></tr
><tr id="gr_svn7768_995"
><td id="995"><a href="#995">995</a></td></tr
><tr id="gr_svn7768_996"
><td id="996"><a href="#996">996</a></td></tr
><tr id="gr_svn7768_997"
><td id="997"><a href="#997">997</a></td></tr
><tr id="gr_svn7768_998"
><td id="998"><a href="#998">998</a></td></tr
><tr id="gr_svn7768_999"
><td id="999"><a href="#999">999</a></td></tr
><tr id="gr_svn7768_1000"
><td id="1000"><a href="#1000">1000</a></td></tr
><tr id="gr_svn7768_1001"
><td id="1001"><a href="#1001">1001</a></td></tr
><tr id="gr_svn7768_1002"
><td id="1002"><a href="#1002">1002</a></td></tr
><tr id="gr_svn7768_1003"
><td id="1003"><a href="#1003">1003</a></td></tr
><tr id="gr_svn7768_1004"
><td id="1004"><a href="#1004">1004</a></td></tr
><tr id="gr_svn7768_1005"
><td id="1005"><a href="#1005">1005</a></td></tr
><tr id="gr_svn7768_1006"
><td id="1006"><a href="#1006">1006</a></td></tr
><tr id="gr_svn7768_1007"
><td id="1007"><a href="#1007">1007</a></td></tr
><tr id="gr_svn7768_1008"
><td id="1008"><a href="#1008">1008</a></td></tr
><tr id="gr_svn7768_1009"
><td id="1009"><a href="#1009">1009</a></td></tr
><tr id="gr_svn7768_1010"
><td id="1010"><a href="#1010">1010</a></td></tr
><tr id="gr_svn7768_1011"
><td id="1011"><a href="#1011">1011</a></td></tr
><tr id="gr_svn7768_1012"
><td id="1012"><a href="#1012">1012</a></td></tr
><tr id="gr_svn7768_1013"
><td id="1013"><a href="#1013">1013</a></td></tr
><tr id="gr_svn7768_1014"
><td id="1014"><a href="#1014">1014</a></td></tr
><tr id="gr_svn7768_1015"
><td id="1015"><a href="#1015">1015</a></td></tr
><tr id="gr_svn7768_1016"
><td id="1016"><a href="#1016">1016</a></td></tr
><tr id="gr_svn7768_1017"
><td id="1017"><a href="#1017">1017</a></td></tr
><tr id="gr_svn7768_1018"
><td id="1018"><a href="#1018">1018</a></td></tr
><tr id="gr_svn7768_1019"
><td id="1019"><a href="#1019">1019</a></td></tr
><tr id="gr_svn7768_1020"
><td id="1020"><a href="#1020">1020</a></td></tr
><tr id="gr_svn7768_1021"
><td id="1021"><a href="#1021">1021</a></td></tr
><tr id="gr_svn7768_1022"
><td id="1022"><a href="#1022">1022</a></td></tr
><tr id="gr_svn7768_1023"
><td id="1023"><a href="#1023">1023</a></td></tr
><tr id="gr_svn7768_1024"
><td id="1024"><a href="#1024">1024</a></td></tr
><tr id="gr_svn7768_1025"
><td id="1025"><a href="#1025">1025</a></td></tr
><tr id="gr_svn7768_1026"
><td id="1026"><a href="#1026">1026</a></td></tr
><tr id="gr_svn7768_1027"
><td id="1027"><a href="#1027">1027</a></td></tr
><tr id="gr_svn7768_1028"
><td id="1028"><a href="#1028">1028</a></td></tr
><tr id="gr_svn7768_1029"
><td id="1029"><a href="#1029">1029</a></td></tr
><tr id="gr_svn7768_1030"
><td id="1030"><a href="#1030">1030</a></td></tr
><tr id="gr_svn7768_1031"
><td id="1031"><a href="#1031">1031</a></td></tr
><tr id="gr_svn7768_1032"
><td id="1032"><a href="#1032">1032</a></td></tr
><tr id="gr_svn7768_1033"
><td id="1033"><a href="#1033">1033</a></td></tr
><tr id="gr_svn7768_1034"
><td id="1034"><a href="#1034">1034</a></td></tr
><tr id="gr_svn7768_1035"
><td id="1035"><a href="#1035">1035</a></td></tr
><tr id="gr_svn7768_1036"
><td id="1036"><a href="#1036">1036</a></td></tr
><tr id="gr_svn7768_1037"
><td id="1037"><a href="#1037">1037</a></td></tr
><tr id="gr_svn7768_1038"
><td id="1038"><a href="#1038">1038</a></td></tr
><tr id="gr_svn7768_1039"
><td id="1039"><a href="#1039">1039</a></td></tr
><tr id="gr_svn7768_1040"
><td id="1040"><a href="#1040">1040</a></td></tr
><tr id="gr_svn7768_1041"
><td id="1041"><a href="#1041">1041</a></td></tr
><tr id="gr_svn7768_1042"
><td id="1042"><a href="#1042">1042</a></td></tr
><tr id="gr_svn7768_1043"
><td id="1043"><a href="#1043">1043</a></td></tr
><tr id="gr_svn7768_1044"
><td id="1044"><a href="#1044">1044</a></td></tr
><tr id="gr_svn7768_1045"
><td id="1045"><a href="#1045">1045</a></td></tr
><tr id="gr_svn7768_1046"
><td id="1046"><a href="#1046">1046</a></td></tr
><tr id="gr_svn7768_1047"
><td id="1047"><a href="#1047">1047</a></td></tr
><tr id="gr_svn7768_1048"
><td id="1048"><a href="#1048">1048</a></td></tr
><tr id="gr_svn7768_1049"
><td id="1049"><a href="#1049">1049</a></td></tr
><tr id="gr_svn7768_1050"
><td id="1050"><a href="#1050">1050</a></td></tr
><tr id="gr_svn7768_1051"
><td id="1051"><a href="#1051">1051</a></td></tr
><tr id="gr_svn7768_1052"
><td id="1052"><a href="#1052">1052</a></td></tr
><tr id="gr_svn7768_1053"
><td id="1053"><a href="#1053">1053</a></td></tr
><tr id="gr_svn7768_1054"
><td id="1054"><a href="#1054">1054</a></td></tr
><tr id="gr_svn7768_1055"
><td id="1055"><a href="#1055">1055</a></td></tr
><tr id="gr_svn7768_1056"
><td id="1056"><a href="#1056">1056</a></td></tr
><tr id="gr_svn7768_1057"
><td id="1057"><a href="#1057">1057</a></td></tr
><tr id="gr_svn7768_1058"
><td id="1058"><a href="#1058">1058</a></td></tr
><tr id="gr_svn7768_1059"
><td id="1059"><a href="#1059">1059</a></td></tr
><tr id="gr_svn7768_1060"
><td id="1060"><a href="#1060">1060</a></td></tr
><tr id="gr_svn7768_1061"
><td id="1061"><a href="#1061">1061</a></td></tr
><tr id="gr_svn7768_1062"
><td id="1062"><a href="#1062">1062</a></td></tr
><tr id="gr_svn7768_1063"
><td id="1063"><a href="#1063">1063</a></td></tr
><tr id="gr_svn7768_1064"
><td id="1064"><a href="#1064">1064</a></td></tr
><tr id="gr_svn7768_1065"
><td id="1065"><a href="#1065">1065</a></td></tr
><tr id="gr_svn7768_1066"
><td id="1066"><a href="#1066">1066</a></td></tr
><tr id="gr_svn7768_1067"
><td id="1067"><a href="#1067">1067</a></td></tr
><tr id="gr_svn7768_1068"
><td id="1068"><a href="#1068">1068</a></td></tr
><tr id="gr_svn7768_1069"
><td id="1069"><a href="#1069">1069</a></td></tr
><tr id="gr_svn7768_1070"
><td id="1070"><a href="#1070">1070</a></td></tr
><tr id="gr_svn7768_1071"
><td id="1071"><a href="#1071">1071</a></td></tr
><tr id="gr_svn7768_1072"
><td id="1072"><a href="#1072">1072</a></td></tr
><tr id="gr_svn7768_1073"
><td id="1073"><a href="#1073">1073</a></td></tr
><tr id="gr_svn7768_1074"
><td id="1074"><a href="#1074">1074</a></td></tr
><tr id="gr_svn7768_1075"
><td id="1075"><a href="#1075">1075</a></td></tr
><tr id="gr_svn7768_1076"
><td id="1076"><a href="#1076">1076</a></td></tr
><tr id="gr_svn7768_1077"
><td id="1077"><a href="#1077">1077</a></td></tr
><tr id="gr_svn7768_1078"
><td id="1078"><a href="#1078">1078</a></td></tr
><tr id="gr_svn7768_1079"
><td id="1079"><a href="#1079">1079</a></td></tr
><tr id="gr_svn7768_1080"
><td id="1080"><a href="#1080">1080</a></td></tr
><tr id="gr_svn7768_1081"
><td id="1081"><a href="#1081">1081</a></td></tr
><tr id="gr_svn7768_1082"
><td id="1082"><a href="#1082">1082</a></td></tr
><tr id="gr_svn7768_1083"
><td id="1083"><a href="#1083">1083</a></td></tr
><tr id="gr_svn7768_1084"
><td id="1084"><a href="#1084">1084</a></td></tr
><tr id="gr_svn7768_1085"
><td id="1085"><a href="#1085">1085</a></td></tr
><tr id="gr_svn7768_1086"
><td id="1086"><a href="#1086">1086</a></td></tr
><tr id="gr_svn7768_1087"
><td id="1087"><a href="#1087">1087</a></td></tr
><tr id="gr_svn7768_1088"
><td id="1088"><a href="#1088">1088</a></td></tr
><tr id="gr_svn7768_1089"
><td id="1089"><a href="#1089">1089</a></td></tr
><tr id="gr_svn7768_1090"
><td id="1090"><a href="#1090">1090</a></td></tr
><tr id="gr_svn7768_1091"
><td id="1091"><a href="#1091">1091</a></td></tr
><tr id="gr_svn7768_1092"
><td id="1092"><a href="#1092">1092</a></td></tr
><tr id="gr_svn7768_1093"
><td id="1093"><a href="#1093">1093</a></td></tr
><tr id="gr_svn7768_1094"
><td id="1094"><a href="#1094">1094</a></td></tr
><tr id="gr_svn7768_1095"
><td id="1095"><a href="#1095">1095</a></td></tr
><tr id="gr_svn7768_1096"
><td id="1096"><a href="#1096">1096</a></td></tr
><tr id="gr_svn7768_1097"
><td id="1097"><a href="#1097">1097</a></td></tr
><tr id="gr_svn7768_1098"
><td id="1098"><a href="#1098">1098</a></td></tr
><tr id="gr_svn7768_1099"
><td id="1099"><a href="#1099">1099</a></td></tr
><tr id="gr_svn7768_1100"
><td id="1100"><a href="#1100">1100</a></td></tr
><tr id="gr_svn7768_1101"
><td id="1101"><a href="#1101">1101</a></td></tr
><tr id="gr_svn7768_1102"
><td id="1102"><a href="#1102">1102</a></td></tr
><tr id="gr_svn7768_1103"
><td id="1103"><a href="#1103">1103</a></td></tr
><tr id="gr_svn7768_1104"
><td id="1104"><a href="#1104">1104</a></td></tr
><tr id="gr_svn7768_1105"
><td id="1105"><a href="#1105">1105</a></td></tr
><tr id="gr_svn7768_1106"
><td id="1106"><a href="#1106">1106</a></td></tr
><tr id="gr_svn7768_1107"
><td id="1107"><a href="#1107">1107</a></td></tr
><tr id="gr_svn7768_1108"
><td id="1108"><a href="#1108">1108</a></td></tr
><tr id="gr_svn7768_1109"
><td id="1109"><a href="#1109">1109</a></td></tr
><tr id="gr_svn7768_1110"
><td id="1110"><a href="#1110">1110</a></td></tr
><tr id="gr_svn7768_1111"
><td id="1111"><a href="#1111">1111</a></td></tr
><tr id="gr_svn7768_1112"
><td id="1112"><a href="#1112">1112</a></td></tr
><tr id="gr_svn7768_1113"
><td id="1113"><a href="#1113">1113</a></td></tr
><tr id="gr_svn7768_1114"
><td id="1114"><a href="#1114">1114</a></td></tr
><tr id="gr_svn7768_1115"
><td id="1115"><a href="#1115">1115</a></td></tr
><tr id="gr_svn7768_1116"
><td id="1116"><a href="#1116">1116</a></td></tr
><tr id="gr_svn7768_1117"
><td id="1117"><a href="#1117">1117</a></td></tr
><tr id="gr_svn7768_1118"
><td id="1118"><a href="#1118">1118</a></td></tr
><tr id="gr_svn7768_1119"
><td id="1119"><a href="#1119">1119</a></td></tr
><tr id="gr_svn7768_1120"
><td id="1120"><a href="#1120">1120</a></td></tr
><tr id="gr_svn7768_1121"
><td id="1121"><a href="#1121">1121</a></td></tr
><tr id="gr_svn7768_1122"
><td id="1122"><a href="#1122">1122</a></td></tr
><tr id="gr_svn7768_1123"
><td id="1123"><a href="#1123">1123</a></td></tr
><tr id="gr_svn7768_1124"
><td id="1124"><a href="#1124">1124</a></td></tr
><tr id="gr_svn7768_1125"
><td id="1125"><a href="#1125">1125</a></td></tr
><tr id="gr_svn7768_1126"
><td id="1126"><a href="#1126">1126</a></td></tr
><tr id="gr_svn7768_1127"
><td id="1127"><a href="#1127">1127</a></td></tr
><tr id="gr_svn7768_1128"
><td id="1128"><a href="#1128">1128</a></td></tr
><tr id="gr_svn7768_1129"
><td id="1129"><a href="#1129">1129</a></td></tr
><tr id="gr_svn7768_1130"
><td id="1130"><a href="#1130">1130</a></td></tr
><tr id="gr_svn7768_1131"
><td id="1131"><a href="#1131">1131</a></td></tr
><tr id="gr_svn7768_1132"
><td id="1132"><a href="#1132">1132</a></td></tr
><tr id="gr_svn7768_1133"
><td id="1133"><a href="#1133">1133</a></td></tr
><tr id="gr_svn7768_1134"
><td id="1134"><a href="#1134">1134</a></td></tr
><tr id="gr_svn7768_1135"
><td id="1135"><a href="#1135">1135</a></td></tr
><tr id="gr_svn7768_1136"
><td id="1136"><a href="#1136">1136</a></td></tr
><tr id="gr_svn7768_1137"
><td id="1137"><a href="#1137">1137</a></td></tr
><tr id="gr_svn7768_1138"
><td id="1138"><a href="#1138">1138</a></td></tr
><tr id="gr_svn7768_1139"
><td id="1139"><a href="#1139">1139</a></td></tr
><tr id="gr_svn7768_1140"
><td id="1140"><a href="#1140">1140</a></td></tr
><tr id="gr_svn7768_1141"
><td id="1141"><a href="#1141">1141</a></td></tr
><tr id="gr_svn7768_1142"
><td id="1142"><a href="#1142">1142</a></td></tr
><tr id="gr_svn7768_1143"
><td id="1143"><a href="#1143">1143</a></td></tr
><tr id="gr_svn7768_1144"
><td id="1144"><a href="#1144">1144</a></td></tr
><tr id="gr_svn7768_1145"
><td id="1145"><a href="#1145">1145</a></td></tr
><tr id="gr_svn7768_1146"
><td id="1146"><a href="#1146">1146</a></td></tr
><tr id="gr_svn7768_1147"
><td id="1147"><a href="#1147">1147</a></td></tr
><tr id="gr_svn7768_1148"
><td id="1148"><a href="#1148">1148</a></td></tr
><tr id="gr_svn7768_1149"
><td id="1149"><a href="#1149">1149</a></td></tr
><tr id="gr_svn7768_1150"
><td id="1150"><a href="#1150">1150</a></td></tr
><tr id="gr_svn7768_1151"
><td id="1151"><a href="#1151">1151</a></td></tr
><tr id="gr_svn7768_1152"
><td id="1152"><a href="#1152">1152</a></td></tr
><tr id="gr_svn7768_1153"
><td id="1153"><a href="#1153">1153</a></td></tr
><tr id="gr_svn7768_1154"
><td id="1154"><a href="#1154">1154</a></td></tr
><tr id="gr_svn7768_1155"
><td id="1155"><a href="#1155">1155</a></td></tr
><tr id="gr_svn7768_1156"
><td id="1156"><a href="#1156">1156</a></td></tr
><tr id="gr_svn7768_1157"
><td id="1157"><a href="#1157">1157</a></td></tr
><tr id="gr_svn7768_1158"
><td id="1158"><a href="#1158">1158</a></td></tr
><tr id="gr_svn7768_1159"
><td id="1159"><a href="#1159">1159</a></td></tr
><tr id="gr_svn7768_1160"
><td id="1160"><a href="#1160">1160</a></td></tr
><tr id="gr_svn7768_1161"
><td id="1161"><a href="#1161">1161</a></td></tr
><tr id="gr_svn7768_1162"
><td id="1162"><a href="#1162">1162</a></td></tr
><tr id="gr_svn7768_1163"
><td id="1163"><a href="#1163">1163</a></td></tr
><tr id="gr_svn7768_1164"
><td id="1164"><a href="#1164">1164</a></td></tr
><tr id="gr_svn7768_1165"
><td id="1165"><a href="#1165">1165</a></td></tr
><tr id="gr_svn7768_1166"
><td id="1166"><a href="#1166">1166</a></td></tr
><tr id="gr_svn7768_1167"
><td id="1167"><a href="#1167">1167</a></td></tr
><tr id="gr_svn7768_1168"
><td id="1168"><a href="#1168">1168</a></td></tr
><tr id="gr_svn7768_1169"
><td id="1169"><a href="#1169">1169</a></td></tr
><tr id="gr_svn7768_1170"
><td id="1170"><a href="#1170">1170</a></td></tr
><tr id="gr_svn7768_1171"
><td id="1171"><a href="#1171">1171</a></td></tr
><tr id="gr_svn7768_1172"
><td id="1172"><a href="#1172">1172</a></td></tr
><tr id="gr_svn7768_1173"
><td id="1173"><a href="#1173">1173</a></td></tr
><tr id="gr_svn7768_1174"
><td id="1174"><a href="#1174">1174</a></td></tr
><tr id="gr_svn7768_1175"
><td id="1175"><a href="#1175">1175</a></td></tr
><tr id="gr_svn7768_1176"
><td id="1176"><a href="#1176">1176</a></td></tr
><tr id="gr_svn7768_1177"
><td id="1177"><a href="#1177">1177</a></td></tr
><tr id="gr_svn7768_1178"
><td id="1178"><a href="#1178">1178</a></td></tr
><tr id="gr_svn7768_1179"
><td id="1179"><a href="#1179">1179</a></td></tr
><tr id="gr_svn7768_1180"
><td id="1180"><a href="#1180">1180</a></td></tr
><tr id="gr_svn7768_1181"
><td id="1181"><a href="#1181">1181</a></td></tr
><tr id="gr_svn7768_1182"
><td id="1182"><a href="#1182">1182</a></td></tr
><tr id="gr_svn7768_1183"
><td id="1183"><a href="#1183">1183</a></td></tr
><tr id="gr_svn7768_1184"
><td id="1184"><a href="#1184">1184</a></td></tr
><tr id="gr_svn7768_1185"
><td id="1185"><a href="#1185">1185</a></td></tr
><tr id="gr_svn7768_1186"
><td id="1186"><a href="#1186">1186</a></td></tr
><tr id="gr_svn7768_1187"
><td id="1187"><a href="#1187">1187</a></td></tr
><tr id="gr_svn7768_1188"
><td id="1188"><a href="#1188">1188</a></td></tr
><tr id="gr_svn7768_1189"
><td id="1189"><a href="#1189">1189</a></td></tr
><tr id="gr_svn7768_1190"
><td id="1190"><a href="#1190">1190</a></td></tr
><tr id="gr_svn7768_1191"
><td id="1191"><a href="#1191">1191</a></td></tr
><tr id="gr_svn7768_1192"
><td id="1192"><a href="#1192">1192</a></td></tr
><tr id="gr_svn7768_1193"
><td id="1193"><a href="#1193">1193</a></td></tr
><tr id="gr_svn7768_1194"
><td id="1194"><a href="#1194">1194</a></td></tr
><tr id="gr_svn7768_1195"
><td id="1195"><a href="#1195">1195</a></td></tr
><tr id="gr_svn7768_1196"
><td id="1196"><a href="#1196">1196</a></td></tr
><tr id="gr_svn7768_1197"
><td id="1197"><a href="#1197">1197</a></td></tr
><tr id="gr_svn7768_1198"
><td id="1198"><a href="#1198">1198</a></td></tr
><tr id="gr_svn7768_1199"
><td id="1199"><a href="#1199">1199</a></td></tr
><tr id="gr_svn7768_1200"
><td id="1200"><a href="#1200">1200</a></td></tr
><tr id="gr_svn7768_1201"
><td id="1201"><a href="#1201">1201</a></td></tr
><tr id="gr_svn7768_1202"
><td id="1202"><a href="#1202">1202</a></td></tr
><tr id="gr_svn7768_1203"
><td id="1203"><a href="#1203">1203</a></td></tr
><tr id="gr_svn7768_1204"
><td id="1204"><a href="#1204">1204</a></td></tr
><tr id="gr_svn7768_1205"
><td id="1205"><a href="#1205">1205</a></td></tr
><tr id="gr_svn7768_1206"
><td id="1206"><a href="#1206">1206</a></td></tr
><tr id="gr_svn7768_1207"
><td id="1207"><a href="#1207">1207</a></td></tr
><tr id="gr_svn7768_1208"
><td id="1208"><a href="#1208">1208</a></td></tr
><tr id="gr_svn7768_1209"
><td id="1209"><a href="#1209">1209</a></td></tr
><tr id="gr_svn7768_1210"
><td id="1210"><a href="#1210">1210</a></td></tr
><tr id="gr_svn7768_1211"
><td id="1211"><a href="#1211">1211</a></td></tr
><tr id="gr_svn7768_1212"
><td id="1212"><a href="#1212">1212</a></td></tr
><tr id="gr_svn7768_1213"
><td id="1213"><a href="#1213">1213</a></td></tr
><tr id="gr_svn7768_1214"
><td id="1214"><a href="#1214">1214</a></td></tr
><tr id="gr_svn7768_1215"
><td id="1215"><a href="#1215">1215</a></td></tr
><tr id="gr_svn7768_1216"
><td id="1216"><a href="#1216">1216</a></td></tr
><tr id="gr_svn7768_1217"
><td id="1217"><a href="#1217">1217</a></td></tr
><tr id="gr_svn7768_1218"
><td id="1218"><a href="#1218">1218</a></td></tr
><tr id="gr_svn7768_1219"
><td id="1219"><a href="#1219">1219</a></td></tr
><tr id="gr_svn7768_1220"
><td id="1220"><a href="#1220">1220</a></td></tr
><tr id="gr_svn7768_1221"
><td id="1221"><a href="#1221">1221</a></td></tr
><tr id="gr_svn7768_1222"
><td id="1222"><a href="#1222">1222</a></td></tr
><tr id="gr_svn7768_1223"
><td id="1223"><a href="#1223">1223</a></td></tr
><tr id="gr_svn7768_1224"
><td id="1224"><a href="#1224">1224</a></td></tr
><tr id="gr_svn7768_1225"
><td id="1225"><a href="#1225">1225</a></td></tr
><tr id="gr_svn7768_1226"
><td id="1226"><a href="#1226">1226</a></td></tr
><tr id="gr_svn7768_1227"
><td id="1227"><a href="#1227">1227</a></td></tr
><tr id="gr_svn7768_1228"
><td id="1228"><a href="#1228">1228</a></td></tr
><tr id="gr_svn7768_1229"
><td id="1229"><a href="#1229">1229</a></td></tr
><tr id="gr_svn7768_1230"
><td id="1230"><a href="#1230">1230</a></td></tr
><tr id="gr_svn7768_1231"
><td id="1231"><a href="#1231">1231</a></td></tr
><tr id="gr_svn7768_1232"
><td id="1232"><a href="#1232">1232</a></td></tr
><tr id="gr_svn7768_1233"
><td id="1233"><a href="#1233">1233</a></td></tr
><tr id="gr_svn7768_1234"
><td id="1234"><a href="#1234">1234</a></td></tr
><tr id="gr_svn7768_1235"
><td id="1235"><a href="#1235">1235</a></td></tr
><tr id="gr_svn7768_1236"
><td id="1236"><a href="#1236">1236</a></td></tr
><tr id="gr_svn7768_1237"
><td id="1237"><a href="#1237">1237</a></td></tr
><tr id="gr_svn7768_1238"
><td id="1238"><a href="#1238">1238</a></td></tr
><tr id="gr_svn7768_1239"
><td id="1239"><a href="#1239">1239</a></td></tr
><tr id="gr_svn7768_1240"
><td id="1240"><a href="#1240">1240</a></td></tr
><tr id="gr_svn7768_1241"
><td id="1241"><a href="#1241">1241</a></td></tr
><tr id="gr_svn7768_1242"
><td id="1242"><a href="#1242">1242</a></td></tr
><tr id="gr_svn7768_1243"
><td id="1243"><a href="#1243">1243</a></td></tr
><tr id="gr_svn7768_1244"
><td id="1244"><a href="#1244">1244</a></td></tr
><tr id="gr_svn7768_1245"
><td id="1245"><a href="#1245">1245</a></td></tr
><tr id="gr_svn7768_1246"
><td id="1246"><a href="#1246">1246</a></td></tr
><tr id="gr_svn7768_1247"
><td id="1247"><a href="#1247">1247</a></td></tr
><tr id="gr_svn7768_1248"
><td id="1248"><a href="#1248">1248</a></td></tr
><tr id="gr_svn7768_1249"
><td id="1249"><a href="#1249">1249</a></td></tr
><tr id="gr_svn7768_1250"
><td id="1250"><a href="#1250">1250</a></td></tr
><tr id="gr_svn7768_1251"
><td id="1251"><a href="#1251">1251</a></td></tr
><tr id="gr_svn7768_1252"
><td id="1252"><a href="#1252">1252</a></td></tr
><tr id="gr_svn7768_1253"
><td id="1253"><a href="#1253">1253</a></td></tr
><tr id="gr_svn7768_1254"
><td id="1254"><a href="#1254">1254</a></td></tr
><tr id="gr_svn7768_1255"
><td id="1255"><a href="#1255">1255</a></td></tr
><tr id="gr_svn7768_1256"
><td id="1256"><a href="#1256">1256</a></td></tr
><tr id="gr_svn7768_1257"
><td id="1257"><a href="#1257">1257</a></td></tr
><tr id="gr_svn7768_1258"
><td id="1258"><a href="#1258">1258</a></td></tr
><tr id="gr_svn7768_1259"
><td id="1259"><a href="#1259">1259</a></td></tr
><tr id="gr_svn7768_1260"
><td id="1260"><a href="#1260">1260</a></td></tr
><tr id="gr_svn7768_1261"
><td id="1261"><a href="#1261">1261</a></td></tr
><tr id="gr_svn7768_1262"
><td id="1262"><a href="#1262">1262</a></td></tr
><tr id="gr_svn7768_1263"
><td id="1263"><a href="#1263">1263</a></td></tr
><tr id="gr_svn7768_1264"
><td id="1264"><a href="#1264">1264</a></td></tr
><tr id="gr_svn7768_1265"
><td id="1265"><a href="#1265">1265</a></td></tr
><tr id="gr_svn7768_1266"
><td id="1266"><a href="#1266">1266</a></td></tr
><tr id="gr_svn7768_1267"
><td id="1267"><a href="#1267">1267</a></td></tr
><tr id="gr_svn7768_1268"
><td id="1268"><a href="#1268">1268</a></td></tr
><tr id="gr_svn7768_1269"
><td id="1269"><a href="#1269">1269</a></td></tr
><tr id="gr_svn7768_1270"
><td id="1270"><a href="#1270">1270</a></td></tr
><tr id="gr_svn7768_1271"
><td id="1271"><a href="#1271">1271</a></td></tr
><tr id="gr_svn7768_1272"
><td id="1272"><a href="#1272">1272</a></td></tr
><tr id="gr_svn7768_1273"
><td id="1273"><a href="#1273">1273</a></td></tr
><tr id="gr_svn7768_1274"
><td id="1274"><a href="#1274">1274</a></td></tr
><tr id="gr_svn7768_1275"
><td id="1275"><a href="#1275">1275</a></td></tr
><tr id="gr_svn7768_1276"
><td id="1276"><a href="#1276">1276</a></td></tr
><tr id="gr_svn7768_1277"
><td id="1277"><a href="#1277">1277</a></td></tr
><tr id="gr_svn7768_1278"
><td id="1278"><a href="#1278">1278</a></td></tr
><tr id="gr_svn7768_1279"
><td id="1279"><a href="#1279">1279</a></td></tr
><tr id="gr_svn7768_1280"
><td id="1280"><a href="#1280">1280</a></td></tr
><tr id="gr_svn7768_1281"
><td id="1281"><a href="#1281">1281</a></td></tr
><tr id="gr_svn7768_1282"
><td id="1282"><a href="#1282">1282</a></td></tr
><tr id="gr_svn7768_1283"
><td id="1283"><a href="#1283">1283</a></td></tr
><tr id="gr_svn7768_1284"
><td id="1284"><a href="#1284">1284</a></td></tr
><tr id="gr_svn7768_1285"
><td id="1285"><a href="#1285">1285</a></td></tr
><tr id="gr_svn7768_1286"
><td id="1286"><a href="#1286">1286</a></td></tr
><tr id="gr_svn7768_1287"
><td id="1287"><a href="#1287">1287</a></td></tr
><tr id="gr_svn7768_1288"
><td id="1288"><a href="#1288">1288</a></td></tr
><tr id="gr_svn7768_1289"
><td id="1289"><a href="#1289">1289</a></td></tr
><tr id="gr_svn7768_1290"
><td id="1290"><a href="#1290">1290</a></td></tr
><tr id="gr_svn7768_1291"
><td id="1291"><a href="#1291">1291</a></td></tr
><tr id="gr_svn7768_1292"
><td id="1292"><a href="#1292">1292</a></td></tr
><tr id="gr_svn7768_1293"
><td id="1293"><a href="#1293">1293</a></td></tr
><tr id="gr_svn7768_1294"
><td id="1294"><a href="#1294">1294</a></td></tr
><tr id="gr_svn7768_1295"
><td id="1295"><a href="#1295">1295</a></td></tr
><tr id="gr_svn7768_1296"
><td id="1296"><a href="#1296">1296</a></td></tr
><tr id="gr_svn7768_1297"
><td id="1297"><a href="#1297">1297</a></td></tr
><tr id="gr_svn7768_1298"
><td id="1298"><a href="#1298">1298</a></td></tr
><tr id="gr_svn7768_1299"
><td id="1299"><a href="#1299">1299</a></td></tr
><tr id="gr_svn7768_1300"
><td id="1300"><a href="#1300">1300</a></td></tr
><tr id="gr_svn7768_1301"
><td id="1301"><a href="#1301">1301</a></td></tr
><tr id="gr_svn7768_1302"
><td id="1302"><a href="#1302">1302</a></td></tr
><tr id="gr_svn7768_1303"
><td id="1303"><a href="#1303">1303</a></td></tr
><tr id="gr_svn7768_1304"
><td id="1304"><a href="#1304">1304</a></td></tr
><tr id="gr_svn7768_1305"
><td id="1305"><a href="#1305">1305</a></td></tr
><tr id="gr_svn7768_1306"
><td id="1306"><a href="#1306">1306</a></td></tr
><tr id="gr_svn7768_1307"
><td id="1307"><a href="#1307">1307</a></td></tr
><tr id="gr_svn7768_1308"
><td id="1308"><a href="#1308">1308</a></td></tr
><tr id="gr_svn7768_1309"
><td id="1309"><a href="#1309">1309</a></td></tr
><tr id="gr_svn7768_1310"
><td id="1310"><a href="#1310">1310</a></td></tr
><tr id="gr_svn7768_1311"
><td id="1311"><a href="#1311">1311</a></td></tr
><tr id="gr_svn7768_1312"
><td id="1312"><a href="#1312">1312</a></td></tr
><tr id="gr_svn7768_1313"
><td id="1313"><a href="#1313">1313</a></td></tr
><tr id="gr_svn7768_1314"
><td id="1314"><a href="#1314">1314</a></td></tr
><tr id="gr_svn7768_1315"
><td id="1315"><a href="#1315">1315</a></td></tr
><tr id="gr_svn7768_1316"
><td id="1316"><a href="#1316">1316</a></td></tr
><tr id="gr_svn7768_1317"
><td id="1317"><a href="#1317">1317</a></td></tr
><tr id="gr_svn7768_1318"
><td id="1318"><a href="#1318">1318</a></td></tr
><tr id="gr_svn7768_1319"
><td id="1319"><a href="#1319">1319</a></td></tr
><tr id="gr_svn7768_1320"
><td id="1320"><a href="#1320">1320</a></td></tr
><tr id="gr_svn7768_1321"
><td id="1321"><a href="#1321">1321</a></td></tr
><tr id="gr_svn7768_1322"
><td id="1322"><a href="#1322">1322</a></td></tr
><tr id="gr_svn7768_1323"
><td id="1323"><a href="#1323">1323</a></td></tr
><tr id="gr_svn7768_1324"
><td id="1324"><a href="#1324">1324</a></td></tr
><tr id="gr_svn7768_1325"
><td id="1325"><a href="#1325">1325</a></td></tr
><tr id="gr_svn7768_1326"
><td id="1326"><a href="#1326">1326</a></td></tr
><tr id="gr_svn7768_1327"
><td id="1327"><a href="#1327">1327</a></td></tr
><tr id="gr_svn7768_1328"
><td id="1328"><a href="#1328">1328</a></td></tr
><tr id="gr_svn7768_1329"
><td id="1329"><a href="#1329">1329</a></td></tr
><tr id="gr_svn7768_1330"
><td id="1330"><a href="#1330">1330</a></td></tr
><tr id="gr_svn7768_1331"
><td id="1331"><a href="#1331">1331</a></td></tr
><tr id="gr_svn7768_1332"
><td id="1332"><a href="#1332">1332</a></td></tr
><tr id="gr_svn7768_1333"
><td id="1333"><a href="#1333">1333</a></td></tr
><tr id="gr_svn7768_1334"
><td id="1334"><a href="#1334">1334</a></td></tr
><tr id="gr_svn7768_1335"
><td id="1335"><a href="#1335">1335</a></td></tr
><tr id="gr_svn7768_1336"
><td id="1336"><a href="#1336">1336</a></td></tr
><tr id="gr_svn7768_1337"
><td id="1337"><a href="#1337">1337</a></td></tr
><tr id="gr_svn7768_1338"
><td id="1338"><a href="#1338">1338</a></td></tr
><tr id="gr_svn7768_1339"
><td id="1339"><a href="#1339">1339</a></td></tr
><tr id="gr_svn7768_1340"
><td id="1340"><a href="#1340">1340</a></td></tr
><tr id="gr_svn7768_1341"
><td id="1341"><a href="#1341">1341</a></td></tr
><tr id="gr_svn7768_1342"
><td id="1342"><a href="#1342">1342</a></td></tr
><tr id="gr_svn7768_1343"
><td id="1343"><a href="#1343">1343</a></td></tr
><tr id="gr_svn7768_1344"
><td id="1344"><a href="#1344">1344</a></td></tr
><tr id="gr_svn7768_1345"
><td id="1345"><a href="#1345">1345</a></td></tr
><tr id="gr_svn7768_1346"
><td id="1346"><a href="#1346">1346</a></td></tr
><tr id="gr_svn7768_1347"
><td id="1347"><a href="#1347">1347</a></td></tr
><tr id="gr_svn7768_1348"
><td id="1348"><a href="#1348">1348</a></td></tr
><tr id="gr_svn7768_1349"
><td id="1349"><a href="#1349">1349</a></td></tr
><tr id="gr_svn7768_1350"
><td id="1350"><a href="#1350">1350</a></td></tr
><tr id="gr_svn7768_1351"
><td id="1351"><a href="#1351">1351</a></td></tr
><tr id="gr_svn7768_1352"
><td id="1352"><a href="#1352">1352</a></td></tr
><tr id="gr_svn7768_1353"
><td id="1353"><a href="#1353">1353</a></td></tr
><tr id="gr_svn7768_1354"
><td id="1354"><a href="#1354">1354</a></td></tr
><tr id="gr_svn7768_1355"
><td id="1355"><a href="#1355">1355</a></td></tr
><tr id="gr_svn7768_1356"
><td id="1356"><a href="#1356">1356</a></td></tr
><tr id="gr_svn7768_1357"
><td id="1357"><a href="#1357">1357</a></td></tr
><tr id="gr_svn7768_1358"
><td id="1358"><a href="#1358">1358</a></td></tr
><tr id="gr_svn7768_1359"
><td id="1359"><a href="#1359">1359</a></td></tr
><tr id="gr_svn7768_1360"
><td id="1360"><a href="#1360">1360</a></td></tr
><tr id="gr_svn7768_1361"
><td id="1361"><a href="#1361">1361</a></td></tr
><tr id="gr_svn7768_1362"
><td id="1362"><a href="#1362">1362</a></td></tr
><tr id="gr_svn7768_1363"
><td id="1363"><a href="#1363">1363</a></td></tr
><tr id="gr_svn7768_1364"
><td id="1364"><a href="#1364">1364</a></td></tr
><tr id="gr_svn7768_1365"
><td id="1365"><a href="#1365">1365</a></td></tr
><tr id="gr_svn7768_1366"
><td id="1366"><a href="#1366">1366</a></td></tr
><tr id="gr_svn7768_1367"
><td id="1367"><a href="#1367">1367</a></td></tr
><tr id="gr_svn7768_1368"
><td id="1368"><a href="#1368">1368</a></td></tr
><tr id="gr_svn7768_1369"
><td id="1369"><a href="#1369">1369</a></td></tr
><tr id="gr_svn7768_1370"
><td id="1370"><a href="#1370">1370</a></td></tr
><tr id="gr_svn7768_1371"
><td id="1371"><a href="#1371">1371</a></td></tr
><tr id="gr_svn7768_1372"
><td id="1372"><a href="#1372">1372</a></td></tr
><tr id="gr_svn7768_1373"
><td id="1373"><a href="#1373">1373</a></td></tr
><tr id="gr_svn7768_1374"
><td id="1374"><a href="#1374">1374</a></td></tr
><tr id="gr_svn7768_1375"
><td id="1375"><a href="#1375">1375</a></td></tr
><tr id="gr_svn7768_1376"
><td id="1376"><a href="#1376">1376</a></td></tr
><tr id="gr_svn7768_1377"
><td id="1377"><a href="#1377">1377</a></td></tr
><tr id="gr_svn7768_1378"
><td id="1378"><a href="#1378">1378</a></td></tr
><tr id="gr_svn7768_1379"
><td id="1379"><a href="#1379">1379</a></td></tr
><tr id="gr_svn7768_1380"
><td id="1380"><a href="#1380">1380</a></td></tr
><tr id="gr_svn7768_1381"
><td id="1381"><a href="#1381">1381</a></td></tr
><tr id="gr_svn7768_1382"
><td id="1382"><a href="#1382">1382</a></td></tr
><tr id="gr_svn7768_1383"
><td id="1383"><a href="#1383">1383</a></td></tr
><tr id="gr_svn7768_1384"
><td id="1384"><a href="#1384">1384</a></td></tr
><tr id="gr_svn7768_1385"
><td id="1385"><a href="#1385">1385</a></td></tr
><tr id="gr_svn7768_1386"
><td id="1386"><a href="#1386">1386</a></td></tr
><tr id="gr_svn7768_1387"
><td id="1387"><a href="#1387">1387</a></td></tr
><tr id="gr_svn7768_1388"
><td id="1388"><a href="#1388">1388</a></td></tr
><tr id="gr_svn7768_1389"
><td id="1389"><a href="#1389">1389</a></td></tr
><tr id="gr_svn7768_1390"
><td id="1390"><a href="#1390">1390</a></td></tr
><tr id="gr_svn7768_1391"
><td id="1391"><a href="#1391">1391</a></td></tr
><tr id="gr_svn7768_1392"
><td id="1392"><a href="#1392">1392</a></td></tr
><tr id="gr_svn7768_1393"
><td id="1393"><a href="#1393">1393</a></td></tr
><tr id="gr_svn7768_1394"
><td id="1394"><a href="#1394">1394</a></td></tr
><tr id="gr_svn7768_1395"
><td id="1395"><a href="#1395">1395</a></td></tr
><tr id="gr_svn7768_1396"
><td id="1396"><a href="#1396">1396</a></td></tr
><tr id="gr_svn7768_1397"
><td id="1397"><a href="#1397">1397</a></td></tr
><tr id="gr_svn7768_1398"
><td id="1398"><a href="#1398">1398</a></td></tr
><tr id="gr_svn7768_1399"
><td id="1399"><a href="#1399">1399</a></td></tr
><tr id="gr_svn7768_1400"
><td id="1400"><a href="#1400">1400</a></td></tr
><tr id="gr_svn7768_1401"
><td id="1401"><a href="#1401">1401</a></td></tr
><tr id="gr_svn7768_1402"
><td id="1402"><a href="#1402">1402</a></td></tr
><tr id="gr_svn7768_1403"
><td id="1403"><a href="#1403">1403</a></td></tr
><tr id="gr_svn7768_1404"
><td id="1404"><a href="#1404">1404</a></td></tr
><tr id="gr_svn7768_1405"
><td id="1405"><a href="#1405">1405</a></td></tr
><tr id="gr_svn7768_1406"
><td id="1406"><a href="#1406">1406</a></td></tr
><tr id="gr_svn7768_1407"
><td id="1407"><a href="#1407">1407</a></td></tr
><tr id="gr_svn7768_1408"
><td id="1408"><a href="#1408">1408</a></td></tr
><tr id="gr_svn7768_1409"
><td id="1409"><a href="#1409">1409</a></td></tr
><tr id="gr_svn7768_1410"
><td id="1410"><a href="#1410">1410</a></td></tr
><tr id="gr_svn7768_1411"
><td id="1411"><a href="#1411">1411</a></td></tr
><tr id="gr_svn7768_1412"
><td id="1412"><a href="#1412">1412</a></td></tr
><tr id="gr_svn7768_1413"
><td id="1413"><a href="#1413">1413</a></td></tr
><tr id="gr_svn7768_1414"
><td id="1414"><a href="#1414">1414</a></td></tr
><tr id="gr_svn7768_1415"
><td id="1415"><a href="#1415">1415</a></td></tr
><tr id="gr_svn7768_1416"
><td id="1416"><a href="#1416">1416</a></td></tr
><tr id="gr_svn7768_1417"
><td id="1417"><a href="#1417">1417</a></td></tr
><tr id="gr_svn7768_1418"
><td id="1418"><a href="#1418">1418</a></td></tr
><tr id="gr_svn7768_1419"
><td id="1419"><a href="#1419">1419</a></td></tr
><tr id="gr_svn7768_1420"
><td id="1420"><a href="#1420">1420</a></td></tr
><tr id="gr_svn7768_1421"
><td id="1421"><a href="#1421">1421</a></td></tr
><tr id="gr_svn7768_1422"
><td id="1422"><a href="#1422">1422</a></td></tr
><tr id="gr_svn7768_1423"
><td id="1423"><a href="#1423">1423</a></td></tr
><tr id="gr_svn7768_1424"
><td id="1424"><a href="#1424">1424</a></td></tr
><tr id="gr_svn7768_1425"
><td id="1425"><a href="#1425">1425</a></td></tr
><tr id="gr_svn7768_1426"
><td id="1426"><a href="#1426">1426</a></td></tr
><tr id="gr_svn7768_1427"
><td id="1427"><a href="#1427">1427</a></td></tr
><tr id="gr_svn7768_1428"
><td id="1428"><a href="#1428">1428</a></td></tr
><tr id="gr_svn7768_1429"
><td id="1429"><a href="#1429">1429</a></td></tr
><tr id="gr_svn7768_1430"
><td id="1430"><a href="#1430">1430</a></td></tr
><tr id="gr_svn7768_1431"
><td id="1431"><a href="#1431">1431</a></td></tr
><tr id="gr_svn7768_1432"
><td id="1432"><a href="#1432">1432</a></td></tr
><tr id="gr_svn7768_1433"
><td id="1433"><a href="#1433">1433</a></td></tr
><tr id="gr_svn7768_1434"
><td id="1434"><a href="#1434">1434</a></td></tr
><tr id="gr_svn7768_1435"
><td id="1435"><a href="#1435">1435</a></td></tr
><tr id="gr_svn7768_1436"
><td id="1436"><a href="#1436">1436</a></td></tr
><tr id="gr_svn7768_1437"
><td id="1437"><a href="#1437">1437</a></td></tr
><tr id="gr_svn7768_1438"
><td id="1438"><a href="#1438">1438</a></td></tr
><tr id="gr_svn7768_1439"
><td id="1439"><a href="#1439">1439</a></td></tr
><tr id="gr_svn7768_1440"
><td id="1440"><a href="#1440">1440</a></td></tr
><tr id="gr_svn7768_1441"
><td id="1441"><a href="#1441">1441</a></td></tr
><tr id="gr_svn7768_1442"
><td id="1442"><a href="#1442">1442</a></td></tr
><tr id="gr_svn7768_1443"
><td id="1443"><a href="#1443">1443</a></td></tr
><tr id="gr_svn7768_1444"
><td id="1444"><a href="#1444">1444</a></td></tr
><tr id="gr_svn7768_1445"
><td id="1445"><a href="#1445">1445</a></td></tr
><tr id="gr_svn7768_1446"
><td id="1446"><a href="#1446">1446</a></td></tr
><tr id="gr_svn7768_1447"
><td id="1447"><a href="#1447">1447</a></td></tr
><tr id="gr_svn7768_1448"
><td id="1448"><a href="#1448">1448</a></td></tr
><tr id="gr_svn7768_1449"
><td id="1449"><a href="#1449">1449</a></td></tr
><tr id="gr_svn7768_1450"
><td id="1450"><a href="#1450">1450</a></td></tr
><tr id="gr_svn7768_1451"
><td id="1451"><a href="#1451">1451</a></td></tr
><tr id="gr_svn7768_1452"
><td id="1452"><a href="#1452">1452</a></td></tr
><tr id="gr_svn7768_1453"
><td id="1453"><a href="#1453">1453</a></td></tr
><tr id="gr_svn7768_1454"
><td id="1454"><a href="#1454">1454</a></td></tr
><tr id="gr_svn7768_1455"
><td id="1455"><a href="#1455">1455</a></td></tr
><tr id="gr_svn7768_1456"
><td id="1456"><a href="#1456">1456</a></td></tr
><tr id="gr_svn7768_1457"
><td id="1457"><a href="#1457">1457</a></td></tr
><tr id="gr_svn7768_1458"
><td id="1458"><a href="#1458">1458</a></td></tr
><tr id="gr_svn7768_1459"
><td id="1459"><a href="#1459">1459</a></td></tr
><tr id="gr_svn7768_1460"
><td id="1460"><a href="#1460">1460</a></td></tr
><tr id="gr_svn7768_1461"
><td id="1461"><a href="#1461">1461</a></td></tr
><tr id="gr_svn7768_1462"
><td id="1462"><a href="#1462">1462</a></td></tr
><tr id="gr_svn7768_1463"
><td id="1463"><a href="#1463">1463</a></td></tr
><tr id="gr_svn7768_1464"
><td id="1464"><a href="#1464">1464</a></td></tr
><tr id="gr_svn7768_1465"
><td id="1465"><a href="#1465">1465</a></td></tr
><tr id="gr_svn7768_1466"
><td id="1466"><a href="#1466">1466</a></td></tr
><tr id="gr_svn7768_1467"
><td id="1467"><a href="#1467">1467</a></td></tr
><tr id="gr_svn7768_1468"
><td id="1468"><a href="#1468">1468</a></td></tr
><tr id="gr_svn7768_1469"
><td id="1469"><a href="#1469">1469</a></td></tr
><tr id="gr_svn7768_1470"
><td id="1470"><a href="#1470">1470</a></td></tr
><tr id="gr_svn7768_1471"
><td id="1471"><a href="#1471">1471</a></td></tr
><tr id="gr_svn7768_1472"
><td id="1472"><a href="#1472">1472</a></td></tr
><tr id="gr_svn7768_1473"
><td id="1473"><a href="#1473">1473</a></td></tr
><tr id="gr_svn7768_1474"
><td id="1474"><a href="#1474">1474</a></td></tr
><tr id="gr_svn7768_1475"
><td id="1475"><a href="#1475">1475</a></td></tr
><tr id="gr_svn7768_1476"
><td id="1476"><a href="#1476">1476</a></td></tr
><tr id="gr_svn7768_1477"
><td id="1477"><a href="#1477">1477</a></td></tr
><tr id="gr_svn7768_1478"
><td id="1478"><a href="#1478">1478</a></td></tr
><tr id="gr_svn7768_1479"
><td id="1479"><a href="#1479">1479</a></td></tr
><tr id="gr_svn7768_1480"
><td id="1480"><a href="#1480">1480</a></td></tr
><tr id="gr_svn7768_1481"
><td id="1481"><a href="#1481">1481</a></td></tr
><tr id="gr_svn7768_1482"
><td id="1482"><a href="#1482">1482</a></td></tr
><tr id="gr_svn7768_1483"
><td id="1483"><a href="#1483">1483</a></td></tr
><tr id="gr_svn7768_1484"
><td id="1484"><a href="#1484">1484</a></td></tr
><tr id="gr_svn7768_1485"
><td id="1485"><a href="#1485">1485</a></td></tr
><tr id="gr_svn7768_1486"
><td id="1486"><a href="#1486">1486</a></td></tr
><tr id="gr_svn7768_1487"
><td id="1487"><a href="#1487">1487</a></td></tr
><tr id="gr_svn7768_1488"
><td id="1488"><a href="#1488">1488</a></td></tr
><tr id="gr_svn7768_1489"
><td id="1489"><a href="#1489">1489</a></td></tr
><tr id="gr_svn7768_1490"
><td id="1490"><a href="#1490">1490</a></td></tr
><tr id="gr_svn7768_1491"
><td id="1491"><a href="#1491">1491</a></td></tr
><tr id="gr_svn7768_1492"
><td id="1492"><a href="#1492">1492</a></td></tr
><tr id="gr_svn7768_1493"
><td id="1493"><a href="#1493">1493</a></td></tr
><tr id="gr_svn7768_1494"
><td id="1494"><a href="#1494">1494</a></td></tr
><tr id="gr_svn7768_1495"
><td id="1495"><a href="#1495">1495</a></td></tr
><tr id="gr_svn7768_1496"
><td id="1496"><a href="#1496">1496</a></td></tr
><tr id="gr_svn7768_1497"
><td id="1497"><a href="#1497">1497</a></td></tr
><tr id="gr_svn7768_1498"
><td id="1498"><a href="#1498">1498</a></td></tr
><tr id="gr_svn7768_1499"
><td id="1499"><a href="#1499">1499</a></td></tr
><tr id="gr_svn7768_1500"
><td id="1500"><a href="#1500">1500</a></td></tr
><tr id="gr_svn7768_1501"
><td id="1501"><a href="#1501">1501</a></td></tr
><tr id="gr_svn7768_1502"
><td id="1502"><a href="#1502">1502</a></td></tr
><tr id="gr_svn7768_1503"
><td id="1503"><a href="#1503">1503</a></td></tr
><tr id="gr_svn7768_1504"
><td id="1504"><a href="#1504">1504</a></td></tr
><tr id="gr_svn7768_1505"
><td id="1505"><a href="#1505">1505</a></td></tr
><tr id="gr_svn7768_1506"
><td id="1506"><a href="#1506">1506</a></td></tr
><tr id="gr_svn7768_1507"
><td id="1507"><a href="#1507">1507</a></td></tr
><tr id="gr_svn7768_1508"
><td id="1508"><a href="#1508">1508</a></td></tr
><tr id="gr_svn7768_1509"
><td id="1509"><a href="#1509">1509</a></td></tr
><tr id="gr_svn7768_1510"
><td id="1510"><a href="#1510">1510</a></td></tr
><tr id="gr_svn7768_1511"
><td id="1511"><a href="#1511">1511</a></td></tr
><tr id="gr_svn7768_1512"
><td id="1512"><a href="#1512">1512</a></td></tr
><tr id="gr_svn7768_1513"
><td id="1513"><a href="#1513">1513</a></td></tr
><tr id="gr_svn7768_1514"
><td id="1514"><a href="#1514">1514</a></td></tr
><tr id="gr_svn7768_1515"
><td id="1515"><a href="#1515">1515</a></td></tr
><tr id="gr_svn7768_1516"
><td id="1516"><a href="#1516">1516</a></td></tr
><tr id="gr_svn7768_1517"
><td id="1517"><a href="#1517">1517</a></td></tr
><tr id="gr_svn7768_1518"
><td id="1518"><a href="#1518">1518</a></td></tr
><tr id="gr_svn7768_1519"
><td id="1519"><a href="#1519">1519</a></td></tr
><tr id="gr_svn7768_1520"
><td id="1520"><a href="#1520">1520</a></td></tr
><tr id="gr_svn7768_1521"
><td id="1521"><a href="#1521">1521</a></td></tr
><tr id="gr_svn7768_1522"
><td id="1522"><a href="#1522">1522</a></td></tr
><tr id="gr_svn7768_1523"
><td id="1523"><a href="#1523">1523</a></td></tr
><tr id="gr_svn7768_1524"
><td id="1524"><a href="#1524">1524</a></td></tr
><tr id="gr_svn7768_1525"
><td id="1525"><a href="#1525">1525</a></td></tr
><tr id="gr_svn7768_1526"
><td id="1526"><a href="#1526">1526</a></td></tr
><tr id="gr_svn7768_1527"
><td id="1527"><a href="#1527">1527</a></td></tr
><tr id="gr_svn7768_1528"
><td id="1528"><a href="#1528">1528</a></td></tr
><tr id="gr_svn7768_1529"
><td id="1529"><a href="#1529">1529</a></td></tr
><tr id="gr_svn7768_1530"
><td id="1530"><a href="#1530">1530</a></td></tr
><tr id="gr_svn7768_1531"
><td id="1531"><a href="#1531">1531</a></td></tr
><tr id="gr_svn7768_1532"
><td id="1532"><a href="#1532">1532</a></td></tr
><tr id="gr_svn7768_1533"
><td id="1533"><a href="#1533">1533</a></td></tr
><tr id="gr_svn7768_1534"
><td id="1534"><a href="#1534">1534</a></td></tr
><tr id="gr_svn7768_1535"
><td id="1535"><a href="#1535">1535</a></td></tr
><tr id="gr_svn7768_1536"
><td id="1536"><a href="#1536">1536</a></td></tr
><tr id="gr_svn7768_1537"
><td id="1537"><a href="#1537">1537</a></td></tr
><tr id="gr_svn7768_1538"
><td id="1538"><a href="#1538">1538</a></td></tr
><tr id="gr_svn7768_1539"
><td id="1539"><a href="#1539">1539</a></td></tr
><tr id="gr_svn7768_1540"
><td id="1540"><a href="#1540">1540</a></td></tr
><tr id="gr_svn7768_1541"
><td id="1541"><a href="#1541">1541</a></td></tr
><tr id="gr_svn7768_1542"
><td id="1542"><a href="#1542">1542</a></td></tr
><tr id="gr_svn7768_1543"
><td id="1543"><a href="#1543">1543</a></td></tr
><tr id="gr_svn7768_1544"
><td id="1544"><a href="#1544">1544</a></td></tr
><tr id="gr_svn7768_1545"
><td id="1545"><a href="#1545">1545</a></td></tr
><tr id="gr_svn7768_1546"
><td id="1546"><a href="#1546">1546</a></td></tr
><tr id="gr_svn7768_1547"
><td id="1547"><a href="#1547">1547</a></td></tr
><tr id="gr_svn7768_1548"
><td id="1548"><a href="#1548">1548</a></td></tr
><tr id="gr_svn7768_1549"
><td id="1549"><a href="#1549">1549</a></td></tr
><tr id="gr_svn7768_1550"
><td id="1550"><a href="#1550">1550</a></td></tr
><tr id="gr_svn7768_1551"
><td id="1551"><a href="#1551">1551</a></td></tr
><tr id="gr_svn7768_1552"
><td id="1552"><a href="#1552">1552</a></td></tr
><tr id="gr_svn7768_1553"
><td id="1553"><a href="#1553">1553</a></td></tr
><tr id="gr_svn7768_1554"
><td id="1554"><a href="#1554">1554</a></td></tr
><tr id="gr_svn7768_1555"
><td id="1555"><a href="#1555">1555</a></td></tr
><tr id="gr_svn7768_1556"
><td id="1556"><a href="#1556">1556</a></td></tr
><tr id="gr_svn7768_1557"
><td id="1557"><a href="#1557">1557</a></td></tr
><tr id="gr_svn7768_1558"
><td id="1558"><a href="#1558">1558</a></td></tr
><tr id="gr_svn7768_1559"
><td id="1559"><a href="#1559">1559</a></td></tr
><tr id="gr_svn7768_1560"
><td id="1560"><a href="#1560">1560</a></td></tr
><tr id="gr_svn7768_1561"
><td id="1561"><a href="#1561">1561</a></td></tr
><tr id="gr_svn7768_1562"
><td id="1562"><a href="#1562">1562</a></td></tr
><tr id="gr_svn7768_1563"
><td id="1563"><a href="#1563">1563</a></td></tr
><tr id="gr_svn7768_1564"
><td id="1564"><a href="#1564">1564</a></td></tr
><tr id="gr_svn7768_1565"
><td id="1565"><a href="#1565">1565</a></td></tr
><tr id="gr_svn7768_1566"
><td id="1566"><a href="#1566">1566</a></td></tr
><tr id="gr_svn7768_1567"
><td id="1567"><a href="#1567">1567</a></td></tr
><tr id="gr_svn7768_1568"
><td id="1568"><a href="#1568">1568</a></td></tr
><tr id="gr_svn7768_1569"
><td id="1569"><a href="#1569">1569</a></td></tr
><tr id="gr_svn7768_1570"
><td id="1570"><a href="#1570">1570</a></td></tr
><tr id="gr_svn7768_1571"
><td id="1571"><a href="#1571">1571</a></td></tr
><tr id="gr_svn7768_1572"
><td id="1572"><a href="#1572">1572</a></td></tr
><tr id="gr_svn7768_1573"
><td id="1573"><a href="#1573">1573</a></td></tr
><tr id="gr_svn7768_1574"
><td id="1574"><a href="#1574">1574</a></td></tr
><tr id="gr_svn7768_1575"
><td id="1575"><a href="#1575">1575</a></td></tr
><tr id="gr_svn7768_1576"
><td id="1576"><a href="#1576">1576</a></td></tr
><tr id="gr_svn7768_1577"
><td id="1577"><a href="#1577">1577</a></td></tr
><tr id="gr_svn7768_1578"
><td id="1578"><a href="#1578">1578</a></td></tr
><tr id="gr_svn7768_1579"
><td id="1579"><a href="#1579">1579</a></td></tr
><tr id="gr_svn7768_1580"
><td id="1580"><a href="#1580">1580</a></td></tr
><tr id="gr_svn7768_1581"
><td id="1581"><a href="#1581">1581</a></td></tr
><tr id="gr_svn7768_1582"
><td id="1582"><a href="#1582">1582</a></td></tr
><tr id="gr_svn7768_1583"
><td id="1583"><a href="#1583">1583</a></td></tr
><tr id="gr_svn7768_1584"
><td id="1584"><a href="#1584">1584</a></td></tr
><tr id="gr_svn7768_1585"
><td id="1585"><a href="#1585">1585</a></td></tr
><tr id="gr_svn7768_1586"
><td id="1586"><a href="#1586">1586</a></td></tr
><tr id="gr_svn7768_1587"
><td id="1587"><a href="#1587">1587</a></td></tr
><tr id="gr_svn7768_1588"
><td id="1588"><a href="#1588">1588</a></td></tr
><tr id="gr_svn7768_1589"
><td id="1589"><a href="#1589">1589</a></td></tr
><tr id="gr_svn7768_1590"
><td id="1590"><a href="#1590">1590</a></td></tr
><tr id="gr_svn7768_1591"
><td id="1591"><a href="#1591">1591</a></td></tr
><tr id="gr_svn7768_1592"
><td id="1592"><a href="#1592">1592</a></td></tr
><tr id="gr_svn7768_1593"
><td id="1593"><a href="#1593">1593</a></td></tr
><tr id="gr_svn7768_1594"
><td id="1594"><a href="#1594">1594</a></td></tr
><tr id="gr_svn7768_1595"
><td id="1595"><a href="#1595">1595</a></td></tr
><tr id="gr_svn7768_1596"
><td id="1596"><a href="#1596">1596</a></td></tr
><tr id="gr_svn7768_1597"
><td id="1597"><a href="#1597">1597</a></td></tr
><tr id="gr_svn7768_1598"
><td id="1598"><a href="#1598">1598</a></td></tr
><tr id="gr_svn7768_1599"
><td id="1599"><a href="#1599">1599</a></td></tr
><tr id="gr_svn7768_1600"
><td id="1600"><a href="#1600">1600</a></td></tr
><tr id="gr_svn7768_1601"
><td id="1601"><a href="#1601">1601</a></td></tr
><tr id="gr_svn7768_1602"
><td id="1602"><a href="#1602">1602</a></td></tr
><tr id="gr_svn7768_1603"
><td id="1603"><a href="#1603">1603</a></td></tr
><tr id="gr_svn7768_1604"
><td id="1604"><a href="#1604">1604</a></td></tr
><tr id="gr_svn7768_1605"
><td id="1605"><a href="#1605">1605</a></td></tr
><tr id="gr_svn7768_1606"
><td id="1606"><a href="#1606">1606</a></td></tr
><tr id="gr_svn7768_1607"
><td id="1607"><a href="#1607">1607</a></td></tr
><tr id="gr_svn7768_1608"
><td id="1608"><a href="#1608">1608</a></td></tr
><tr id="gr_svn7768_1609"
><td id="1609"><a href="#1609">1609</a></td></tr
><tr id="gr_svn7768_1610"
><td id="1610"><a href="#1610">1610</a></td></tr
><tr id="gr_svn7768_1611"
><td id="1611"><a href="#1611">1611</a></td></tr
><tr id="gr_svn7768_1612"
><td id="1612"><a href="#1612">1612</a></td></tr
><tr id="gr_svn7768_1613"
><td id="1613"><a href="#1613">1613</a></td></tr
><tr id="gr_svn7768_1614"
><td id="1614"><a href="#1614">1614</a></td></tr
><tr id="gr_svn7768_1615"
><td id="1615"><a href="#1615">1615</a></td></tr
><tr id="gr_svn7768_1616"
><td id="1616"><a href="#1616">1616</a></td></tr
><tr id="gr_svn7768_1617"
><td id="1617"><a href="#1617">1617</a></td></tr
><tr id="gr_svn7768_1618"
><td id="1618"><a href="#1618">1618</a></td></tr
><tr id="gr_svn7768_1619"
><td id="1619"><a href="#1619">1619</a></td></tr
><tr id="gr_svn7768_1620"
><td id="1620"><a href="#1620">1620</a></td></tr
><tr id="gr_svn7768_1621"
><td id="1621"><a href="#1621">1621</a></td></tr
><tr id="gr_svn7768_1622"
><td id="1622"><a href="#1622">1622</a></td></tr
><tr id="gr_svn7768_1623"
><td id="1623"><a href="#1623">1623</a></td></tr
><tr id="gr_svn7768_1624"
><td id="1624"><a href="#1624">1624</a></td></tr
><tr id="gr_svn7768_1625"
><td id="1625"><a href="#1625">1625</a></td></tr
><tr id="gr_svn7768_1626"
><td id="1626"><a href="#1626">1626</a></td></tr
><tr id="gr_svn7768_1627"
><td id="1627"><a href="#1627">1627</a></td></tr
><tr id="gr_svn7768_1628"
><td id="1628"><a href="#1628">1628</a></td></tr
><tr id="gr_svn7768_1629"
><td id="1629"><a href="#1629">1629</a></td></tr
><tr id="gr_svn7768_1630"
><td id="1630"><a href="#1630">1630</a></td></tr
><tr id="gr_svn7768_1631"
><td id="1631"><a href="#1631">1631</a></td></tr
><tr id="gr_svn7768_1632"
><td id="1632"><a href="#1632">1632</a></td></tr
><tr id="gr_svn7768_1633"
><td id="1633"><a href="#1633">1633</a></td></tr
><tr id="gr_svn7768_1634"
><td id="1634"><a href="#1634">1634</a></td></tr
><tr id="gr_svn7768_1635"
><td id="1635"><a href="#1635">1635</a></td></tr
><tr id="gr_svn7768_1636"
><td id="1636"><a href="#1636">1636</a></td></tr
><tr id="gr_svn7768_1637"
><td id="1637"><a href="#1637">1637</a></td></tr
><tr id="gr_svn7768_1638"
><td id="1638"><a href="#1638">1638</a></td></tr
><tr id="gr_svn7768_1639"
><td id="1639"><a href="#1639">1639</a></td></tr
><tr id="gr_svn7768_1640"
><td id="1640"><a href="#1640">1640</a></td></tr
><tr id="gr_svn7768_1641"
><td id="1641"><a href="#1641">1641</a></td></tr
><tr id="gr_svn7768_1642"
><td id="1642"><a href="#1642">1642</a></td></tr
><tr id="gr_svn7768_1643"
><td id="1643"><a href="#1643">1643</a></td></tr
><tr id="gr_svn7768_1644"
><td id="1644"><a href="#1644">1644</a></td></tr
><tr id="gr_svn7768_1645"
><td id="1645"><a href="#1645">1645</a></td></tr
><tr id="gr_svn7768_1646"
><td id="1646"><a href="#1646">1646</a></td></tr
><tr id="gr_svn7768_1647"
><td id="1647"><a href="#1647">1647</a></td></tr
><tr id="gr_svn7768_1648"
><td id="1648"><a href="#1648">1648</a></td></tr
><tr id="gr_svn7768_1649"
><td id="1649"><a href="#1649">1649</a></td></tr
><tr id="gr_svn7768_1650"
><td id="1650"><a href="#1650">1650</a></td></tr
><tr id="gr_svn7768_1651"
><td id="1651"><a href="#1651">1651</a></td></tr
><tr id="gr_svn7768_1652"
><td id="1652"><a href="#1652">1652</a></td></tr
><tr id="gr_svn7768_1653"
><td id="1653"><a href="#1653">1653</a></td></tr
><tr id="gr_svn7768_1654"
><td id="1654"><a href="#1654">1654</a></td></tr
><tr id="gr_svn7768_1655"
><td id="1655"><a href="#1655">1655</a></td></tr
><tr id="gr_svn7768_1656"
><td id="1656"><a href="#1656">1656</a></td></tr
><tr id="gr_svn7768_1657"
><td id="1657"><a href="#1657">1657</a></td></tr
><tr id="gr_svn7768_1658"
><td id="1658"><a href="#1658">1658</a></td></tr
><tr id="gr_svn7768_1659"
><td id="1659"><a href="#1659">1659</a></td></tr
><tr id="gr_svn7768_1660"
><td id="1660"><a href="#1660">1660</a></td></tr
><tr id="gr_svn7768_1661"
><td id="1661"><a href="#1661">1661</a></td></tr
><tr id="gr_svn7768_1662"
><td id="1662"><a href="#1662">1662</a></td></tr
><tr id="gr_svn7768_1663"
><td id="1663"><a href="#1663">1663</a></td></tr
><tr id="gr_svn7768_1664"
><td id="1664"><a href="#1664">1664</a></td></tr
><tr id="gr_svn7768_1665"
><td id="1665"><a href="#1665">1665</a></td></tr
><tr id="gr_svn7768_1666"
><td id="1666"><a href="#1666">1666</a></td></tr
><tr id="gr_svn7768_1667"
><td id="1667"><a href="#1667">1667</a></td></tr
><tr id="gr_svn7768_1668"
><td id="1668"><a href="#1668">1668</a></td></tr
><tr id="gr_svn7768_1669"
><td id="1669"><a href="#1669">1669</a></td></tr
><tr id="gr_svn7768_1670"
><td id="1670"><a href="#1670">1670</a></td></tr
><tr id="gr_svn7768_1671"
><td id="1671"><a href="#1671">1671</a></td></tr
><tr id="gr_svn7768_1672"
><td id="1672"><a href="#1672">1672</a></td></tr
><tr id="gr_svn7768_1673"
><td id="1673"><a href="#1673">1673</a></td></tr
><tr id="gr_svn7768_1674"
><td id="1674"><a href="#1674">1674</a></td></tr
><tr id="gr_svn7768_1675"
><td id="1675"><a href="#1675">1675</a></td></tr
><tr id="gr_svn7768_1676"
><td id="1676"><a href="#1676">1676</a></td></tr
><tr id="gr_svn7768_1677"
><td id="1677"><a href="#1677">1677</a></td></tr
><tr id="gr_svn7768_1678"
><td id="1678"><a href="#1678">1678</a></td></tr
><tr id="gr_svn7768_1679"
><td id="1679"><a href="#1679">1679</a></td></tr
><tr id="gr_svn7768_1680"
><td id="1680"><a href="#1680">1680</a></td></tr
><tr id="gr_svn7768_1681"
><td id="1681"><a href="#1681">1681</a></td></tr
><tr id="gr_svn7768_1682"
><td id="1682"><a href="#1682">1682</a></td></tr
><tr id="gr_svn7768_1683"
><td id="1683"><a href="#1683">1683</a></td></tr
><tr id="gr_svn7768_1684"
><td id="1684"><a href="#1684">1684</a></td></tr
><tr id="gr_svn7768_1685"
><td id="1685"><a href="#1685">1685</a></td></tr
><tr id="gr_svn7768_1686"
><td id="1686"><a href="#1686">1686</a></td></tr
><tr id="gr_svn7768_1687"
><td id="1687"><a href="#1687">1687</a></td></tr
><tr id="gr_svn7768_1688"
><td id="1688"><a href="#1688">1688</a></td></tr
><tr id="gr_svn7768_1689"
><td id="1689"><a href="#1689">1689</a></td></tr
><tr id="gr_svn7768_1690"
><td id="1690"><a href="#1690">1690</a></td></tr
><tr id="gr_svn7768_1691"
><td id="1691"><a href="#1691">1691</a></td></tr
><tr id="gr_svn7768_1692"
><td id="1692"><a href="#1692">1692</a></td></tr
><tr id="gr_svn7768_1693"
><td id="1693"><a href="#1693">1693</a></td></tr
><tr id="gr_svn7768_1694"
><td id="1694"><a href="#1694">1694</a></td></tr
><tr id="gr_svn7768_1695"
><td id="1695"><a href="#1695">1695</a></td></tr
><tr id="gr_svn7768_1696"
><td id="1696"><a href="#1696">1696</a></td></tr
><tr id="gr_svn7768_1697"
><td id="1697"><a href="#1697">1697</a></td></tr
><tr id="gr_svn7768_1698"
><td id="1698"><a href="#1698">1698</a></td></tr
><tr id="gr_svn7768_1699"
><td id="1699"><a href="#1699">1699</a></td></tr
><tr id="gr_svn7768_1700"
><td id="1700"><a href="#1700">1700</a></td></tr
><tr id="gr_svn7768_1701"
><td id="1701"><a href="#1701">1701</a></td></tr
><tr id="gr_svn7768_1702"
><td id="1702"><a href="#1702">1702</a></td></tr
><tr id="gr_svn7768_1703"
><td id="1703"><a href="#1703">1703</a></td></tr
><tr id="gr_svn7768_1704"
><td id="1704"><a href="#1704">1704</a></td></tr
><tr id="gr_svn7768_1705"
><td id="1705"><a href="#1705">1705</a></td></tr
><tr id="gr_svn7768_1706"
><td id="1706"><a href="#1706">1706</a></td></tr
><tr id="gr_svn7768_1707"
><td id="1707"><a href="#1707">1707</a></td></tr
><tr id="gr_svn7768_1708"
><td id="1708"><a href="#1708">1708</a></td></tr
><tr id="gr_svn7768_1709"
><td id="1709"><a href="#1709">1709</a></td></tr
><tr id="gr_svn7768_1710"
><td id="1710"><a href="#1710">1710</a></td></tr
><tr id="gr_svn7768_1711"
><td id="1711"><a href="#1711">1711</a></td></tr
><tr id="gr_svn7768_1712"
><td id="1712"><a href="#1712">1712</a></td></tr
><tr id="gr_svn7768_1713"
><td id="1713"><a href="#1713">1713</a></td></tr
><tr id="gr_svn7768_1714"
><td id="1714"><a href="#1714">1714</a></td></tr
><tr id="gr_svn7768_1715"
><td id="1715"><a href="#1715">1715</a></td></tr
><tr id="gr_svn7768_1716"
><td id="1716"><a href="#1716">1716</a></td></tr
><tr id="gr_svn7768_1717"
><td id="1717"><a href="#1717">1717</a></td></tr
><tr id="gr_svn7768_1718"
><td id="1718"><a href="#1718">1718</a></td></tr
><tr id="gr_svn7768_1719"
><td id="1719"><a href="#1719">1719</a></td></tr
><tr id="gr_svn7768_1720"
><td id="1720"><a href="#1720">1720</a></td></tr
><tr id="gr_svn7768_1721"
><td id="1721"><a href="#1721">1721</a></td></tr
><tr id="gr_svn7768_1722"
><td id="1722"><a href="#1722">1722</a></td></tr
><tr id="gr_svn7768_1723"
><td id="1723"><a href="#1723">1723</a></td></tr
><tr id="gr_svn7768_1724"
><td id="1724"><a href="#1724">1724</a></td></tr
><tr id="gr_svn7768_1725"
><td id="1725"><a href="#1725">1725</a></td></tr
><tr id="gr_svn7768_1726"
><td id="1726"><a href="#1726">1726</a></td></tr
><tr id="gr_svn7768_1727"
><td id="1727"><a href="#1727">1727</a></td></tr
><tr id="gr_svn7768_1728"
><td id="1728"><a href="#1728">1728</a></td></tr
><tr id="gr_svn7768_1729"
><td id="1729"><a href="#1729">1729</a></td></tr
><tr id="gr_svn7768_1730"
><td id="1730"><a href="#1730">1730</a></td></tr
><tr id="gr_svn7768_1731"
><td id="1731"><a href="#1731">1731</a></td></tr
><tr id="gr_svn7768_1732"
><td id="1732"><a href="#1732">1732</a></td></tr
><tr id="gr_svn7768_1733"
><td id="1733"><a href="#1733">1733</a></td></tr
><tr id="gr_svn7768_1734"
><td id="1734"><a href="#1734">1734</a></td></tr
><tr id="gr_svn7768_1735"
><td id="1735"><a href="#1735">1735</a></td></tr
><tr id="gr_svn7768_1736"
><td id="1736"><a href="#1736">1736</a></td></tr
><tr id="gr_svn7768_1737"
><td id="1737"><a href="#1737">1737</a></td></tr
><tr id="gr_svn7768_1738"
><td id="1738"><a href="#1738">1738</a></td></tr
><tr id="gr_svn7768_1739"
><td id="1739"><a href="#1739">1739</a></td></tr
><tr id="gr_svn7768_1740"
><td id="1740"><a href="#1740">1740</a></td></tr
><tr id="gr_svn7768_1741"
><td id="1741"><a href="#1741">1741</a></td></tr
><tr id="gr_svn7768_1742"
><td id="1742"><a href="#1742">1742</a></td></tr
><tr id="gr_svn7768_1743"
><td id="1743"><a href="#1743">1743</a></td></tr
><tr id="gr_svn7768_1744"
><td id="1744"><a href="#1744">1744</a></td></tr
><tr id="gr_svn7768_1745"
><td id="1745"><a href="#1745">1745</a></td></tr
><tr id="gr_svn7768_1746"
><td id="1746"><a href="#1746">1746</a></td></tr
><tr id="gr_svn7768_1747"
><td id="1747"><a href="#1747">1747</a></td></tr
><tr id="gr_svn7768_1748"
><td id="1748"><a href="#1748">1748</a></td></tr
><tr id="gr_svn7768_1749"
><td id="1749"><a href="#1749">1749</a></td></tr
><tr id="gr_svn7768_1750"
><td id="1750"><a href="#1750">1750</a></td></tr
><tr id="gr_svn7768_1751"
><td id="1751"><a href="#1751">1751</a></td></tr
><tr id="gr_svn7768_1752"
><td id="1752"><a href="#1752">1752</a></td></tr
><tr id="gr_svn7768_1753"
><td id="1753"><a href="#1753">1753</a></td></tr
><tr id="gr_svn7768_1754"
><td id="1754"><a href="#1754">1754</a></td></tr
><tr id="gr_svn7768_1755"
><td id="1755"><a href="#1755">1755</a></td></tr
><tr id="gr_svn7768_1756"
><td id="1756"><a href="#1756">1756</a></td></tr
><tr id="gr_svn7768_1757"
><td id="1757"><a href="#1757">1757</a></td></tr
><tr id="gr_svn7768_1758"
><td id="1758"><a href="#1758">1758</a></td></tr
><tr id="gr_svn7768_1759"
><td id="1759"><a href="#1759">1759</a></td></tr
><tr id="gr_svn7768_1760"
><td id="1760"><a href="#1760">1760</a></td></tr
><tr id="gr_svn7768_1761"
><td id="1761"><a href="#1761">1761</a></td></tr
><tr id="gr_svn7768_1762"
><td id="1762"><a href="#1762">1762</a></td></tr
><tr id="gr_svn7768_1763"
><td id="1763"><a href="#1763">1763</a></td></tr
><tr id="gr_svn7768_1764"
><td id="1764"><a href="#1764">1764</a></td></tr
><tr id="gr_svn7768_1765"
><td id="1765"><a href="#1765">1765</a></td></tr
><tr id="gr_svn7768_1766"
><td id="1766"><a href="#1766">1766</a></td></tr
><tr id="gr_svn7768_1767"
><td id="1767"><a href="#1767">1767</a></td></tr
><tr id="gr_svn7768_1768"
><td id="1768"><a href="#1768">1768</a></td></tr
><tr id="gr_svn7768_1769"
><td id="1769"><a href="#1769">1769</a></td></tr
><tr id="gr_svn7768_1770"
><td id="1770"><a href="#1770">1770</a></td></tr
><tr id="gr_svn7768_1771"
><td id="1771"><a href="#1771">1771</a></td></tr
><tr id="gr_svn7768_1772"
><td id="1772"><a href="#1772">1772</a></td></tr
><tr id="gr_svn7768_1773"
><td id="1773"><a href="#1773">1773</a></td></tr
><tr id="gr_svn7768_1774"
><td id="1774"><a href="#1774">1774</a></td></tr
><tr id="gr_svn7768_1775"
><td id="1775"><a href="#1775">1775</a></td></tr
><tr id="gr_svn7768_1776"
><td id="1776"><a href="#1776">1776</a></td></tr
><tr id="gr_svn7768_1777"
><td id="1777"><a href="#1777">1777</a></td></tr
><tr id="gr_svn7768_1778"
><td id="1778"><a href="#1778">1778</a></td></tr
><tr id="gr_svn7768_1779"
><td id="1779"><a href="#1779">1779</a></td></tr
><tr id="gr_svn7768_1780"
><td id="1780"><a href="#1780">1780</a></td></tr
><tr id="gr_svn7768_1781"
><td id="1781"><a href="#1781">1781</a></td></tr
><tr id="gr_svn7768_1782"
><td id="1782"><a href="#1782">1782</a></td></tr
><tr id="gr_svn7768_1783"
><td id="1783"><a href="#1783">1783</a></td></tr
><tr id="gr_svn7768_1784"
><td id="1784"><a href="#1784">1784</a></td></tr
><tr id="gr_svn7768_1785"
><td id="1785"><a href="#1785">1785</a></td></tr
><tr id="gr_svn7768_1786"
><td id="1786"><a href="#1786">1786</a></td></tr
><tr id="gr_svn7768_1787"
><td id="1787"><a href="#1787">1787</a></td></tr
><tr id="gr_svn7768_1788"
><td id="1788"><a href="#1788">1788</a></td></tr
><tr id="gr_svn7768_1789"
><td id="1789"><a href="#1789">1789</a></td></tr
><tr id="gr_svn7768_1790"
><td id="1790"><a href="#1790">1790</a></td></tr
><tr id="gr_svn7768_1791"
><td id="1791"><a href="#1791">1791</a></td></tr
><tr id="gr_svn7768_1792"
><td id="1792"><a href="#1792">1792</a></td></tr
><tr id="gr_svn7768_1793"
><td id="1793"><a href="#1793">1793</a></td></tr
><tr id="gr_svn7768_1794"
><td id="1794"><a href="#1794">1794</a></td></tr
><tr id="gr_svn7768_1795"
><td id="1795"><a href="#1795">1795</a></td></tr
><tr id="gr_svn7768_1796"
><td id="1796"><a href="#1796">1796</a></td></tr
><tr id="gr_svn7768_1797"
><td id="1797"><a href="#1797">1797</a></td></tr
><tr id="gr_svn7768_1798"
><td id="1798"><a href="#1798">1798</a></td></tr
><tr id="gr_svn7768_1799"
><td id="1799"><a href="#1799">1799</a></td></tr
><tr id="gr_svn7768_1800"
><td id="1800"><a href="#1800">1800</a></td></tr
><tr id="gr_svn7768_1801"
><td id="1801"><a href="#1801">1801</a></td></tr
><tr id="gr_svn7768_1802"
><td id="1802"><a href="#1802">1802</a></td></tr
><tr id="gr_svn7768_1803"
><td id="1803"><a href="#1803">1803</a></td></tr
><tr id="gr_svn7768_1804"
><td id="1804"><a href="#1804">1804</a></td></tr
><tr id="gr_svn7768_1805"
><td id="1805"><a href="#1805">1805</a></td></tr
><tr id="gr_svn7768_1806"
><td id="1806"><a href="#1806">1806</a></td></tr
><tr id="gr_svn7768_1807"
><td id="1807"><a href="#1807">1807</a></td></tr
><tr id="gr_svn7768_1808"
><td id="1808"><a href="#1808">1808</a></td></tr
><tr id="gr_svn7768_1809"
><td id="1809"><a href="#1809">1809</a></td></tr
><tr id="gr_svn7768_1810"
><td id="1810"><a href="#1810">1810</a></td></tr
><tr id="gr_svn7768_1811"
><td id="1811"><a href="#1811">1811</a></td></tr
><tr id="gr_svn7768_1812"
><td id="1812"><a href="#1812">1812</a></td></tr
><tr id="gr_svn7768_1813"
><td id="1813"><a href="#1813">1813</a></td></tr
><tr id="gr_svn7768_1814"
><td id="1814"><a href="#1814">1814</a></td></tr
><tr id="gr_svn7768_1815"
><td id="1815"><a href="#1815">1815</a></td></tr
><tr id="gr_svn7768_1816"
><td id="1816"><a href="#1816">1816</a></td></tr
><tr id="gr_svn7768_1817"
><td id="1817"><a href="#1817">1817</a></td></tr
><tr id="gr_svn7768_1818"
><td id="1818"><a href="#1818">1818</a></td></tr
><tr id="gr_svn7768_1819"
><td id="1819"><a href="#1819">1819</a></td></tr
><tr id="gr_svn7768_1820"
><td id="1820"><a href="#1820">1820</a></td></tr
><tr id="gr_svn7768_1821"
><td id="1821"><a href="#1821">1821</a></td></tr
><tr id="gr_svn7768_1822"
><td id="1822"><a href="#1822">1822</a></td></tr
><tr id="gr_svn7768_1823"
><td id="1823"><a href="#1823">1823</a></td></tr
><tr id="gr_svn7768_1824"
><td id="1824"><a href="#1824">1824</a></td></tr
><tr id="gr_svn7768_1825"
><td id="1825"><a href="#1825">1825</a></td></tr
><tr id="gr_svn7768_1826"
><td id="1826"><a href="#1826">1826</a></td></tr
><tr id="gr_svn7768_1827"
><td id="1827"><a href="#1827">1827</a></td></tr
><tr id="gr_svn7768_1828"
><td id="1828"><a href="#1828">1828</a></td></tr
><tr id="gr_svn7768_1829"
><td id="1829"><a href="#1829">1829</a></td></tr
><tr id="gr_svn7768_1830"
><td id="1830"><a href="#1830">1830</a></td></tr
><tr id="gr_svn7768_1831"
><td id="1831"><a href="#1831">1831</a></td></tr
><tr id="gr_svn7768_1832"
><td id="1832"><a href="#1832">1832</a></td></tr
><tr id="gr_svn7768_1833"
><td id="1833"><a href="#1833">1833</a></td></tr
><tr id="gr_svn7768_1834"
><td id="1834"><a href="#1834">1834</a></td></tr
><tr id="gr_svn7768_1835"
><td id="1835"><a href="#1835">1835</a></td></tr
><tr id="gr_svn7768_1836"
><td id="1836"><a href="#1836">1836</a></td></tr
><tr id="gr_svn7768_1837"
><td id="1837"><a href="#1837">1837</a></td></tr
><tr id="gr_svn7768_1838"
><td id="1838"><a href="#1838">1838</a></td></tr
><tr id="gr_svn7768_1839"
><td id="1839"><a href="#1839">1839</a></td></tr
><tr id="gr_svn7768_1840"
><td id="1840"><a href="#1840">1840</a></td></tr
><tr id="gr_svn7768_1841"
><td id="1841"><a href="#1841">1841</a></td></tr
><tr id="gr_svn7768_1842"
><td id="1842"><a href="#1842">1842</a></td></tr
><tr id="gr_svn7768_1843"
><td id="1843"><a href="#1843">1843</a></td></tr
><tr id="gr_svn7768_1844"
><td id="1844"><a href="#1844">1844</a></td></tr
><tr id="gr_svn7768_1845"
><td id="1845"><a href="#1845">1845</a></td></tr
><tr id="gr_svn7768_1846"
><td id="1846"><a href="#1846">1846</a></td></tr
><tr id="gr_svn7768_1847"
><td id="1847"><a href="#1847">1847</a></td></tr
><tr id="gr_svn7768_1848"
><td id="1848"><a href="#1848">1848</a></td></tr
><tr id="gr_svn7768_1849"
><td id="1849"><a href="#1849">1849</a></td></tr
><tr id="gr_svn7768_1850"
><td id="1850"><a href="#1850">1850</a></td></tr
><tr id="gr_svn7768_1851"
><td id="1851"><a href="#1851">1851</a></td></tr
><tr id="gr_svn7768_1852"
><td id="1852"><a href="#1852">1852</a></td></tr
><tr id="gr_svn7768_1853"
><td id="1853"><a href="#1853">1853</a></td></tr
><tr id="gr_svn7768_1854"
><td id="1854"><a href="#1854">1854</a></td></tr
><tr id="gr_svn7768_1855"
><td id="1855"><a href="#1855">1855</a></td></tr
><tr id="gr_svn7768_1856"
><td id="1856"><a href="#1856">1856</a></td></tr
><tr id="gr_svn7768_1857"
><td id="1857"><a href="#1857">1857</a></td></tr
><tr id="gr_svn7768_1858"
><td id="1858"><a href="#1858">1858</a></td></tr
><tr id="gr_svn7768_1859"
><td id="1859"><a href="#1859">1859</a></td></tr
><tr id="gr_svn7768_1860"
><td id="1860"><a href="#1860">1860</a></td></tr
><tr id="gr_svn7768_1861"
><td id="1861"><a href="#1861">1861</a></td></tr
><tr id="gr_svn7768_1862"
><td id="1862"><a href="#1862">1862</a></td></tr
><tr id="gr_svn7768_1863"
><td id="1863"><a href="#1863">1863</a></td></tr
><tr id="gr_svn7768_1864"
><td id="1864"><a href="#1864">1864</a></td></tr
><tr id="gr_svn7768_1865"
><td id="1865"><a href="#1865">1865</a></td></tr
><tr id="gr_svn7768_1866"
><td id="1866"><a href="#1866">1866</a></td></tr
><tr id="gr_svn7768_1867"
><td id="1867"><a href="#1867">1867</a></td></tr
><tr id="gr_svn7768_1868"
><td id="1868"><a href="#1868">1868</a></td></tr
><tr id="gr_svn7768_1869"
><td id="1869"><a href="#1869">1869</a></td></tr
><tr id="gr_svn7768_1870"
><td id="1870"><a href="#1870">1870</a></td></tr
><tr id="gr_svn7768_1871"
><td id="1871"><a href="#1871">1871</a></td></tr
><tr id="gr_svn7768_1872"
><td id="1872"><a href="#1872">1872</a></td></tr
><tr id="gr_svn7768_1873"
><td id="1873"><a href="#1873">1873</a></td></tr
><tr id="gr_svn7768_1874"
><td id="1874"><a href="#1874">1874</a></td></tr
><tr id="gr_svn7768_1875"
><td id="1875"><a href="#1875">1875</a></td></tr
><tr id="gr_svn7768_1876"
><td id="1876"><a href="#1876">1876</a></td></tr
><tr id="gr_svn7768_1877"
><td id="1877"><a href="#1877">1877</a></td></tr
><tr id="gr_svn7768_1878"
><td id="1878"><a href="#1878">1878</a></td></tr
><tr id="gr_svn7768_1879"
><td id="1879"><a href="#1879">1879</a></td></tr
><tr id="gr_svn7768_1880"
><td id="1880"><a href="#1880">1880</a></td></tr
><tr id="gr_svn7768_1881"
><td id="1881"><a href="#1881">1881</a></td></tr
><tr id="gr_svn7768_1882"
><td id="1882"><a href="#1882">1882</a></td></tr
><tr id="gr_svn7768_1883"
><td id="1883"><a href="#1883">1883</a></td></tr
><tr id="gr_svn7768_1884"
><td id="1884"><a href="#1884">1884</a></td></tr
><tr id="gr_svn7768_1885"
><td id="1885"><a href="#1885">1885</a></td></tr
><tr id="gr_svn7768_1886"
><td id="1886"><a href="#1886">1886</a></td></tr
><tr id="gr_svn7768_1887"
><td id="1887"><a href="#1887">1887</a></td></tr
><tr id="gr_svn7768_1888"
><td id="1888"><a href="#1888">1888</a></td></tr
><tr id="gr_svn7768_1889"
><td id="1889"><a href="#1889">1889</a></td></tr
><tr id="gr_svn7768_1890"
><td id="1890"><a href="#1890">1890</a></td></tr
><tr id="gr_svn7768_1891"
><td id="1891"><a href="#1891">1891</a></td></tr
><tr id="gr_svn7768_1892"
><td id="1892"><a href="#1892">1892</a></td></tr
><tr id="gr_svn7768_1893"
><td id="1893"><a href="#1893">1893</a></td></tr
><tr id="gr_svn7768_1894"
><td id="1894"><a href="#1894">1894</a></td></tr
><tr id="gr_svn7768_1895"
><td id="1895"><a href="#1895">1895</a></td></tr
><tr id="gr_svn7768_1896"
><td id="1896"><a href="#1896">1896</a></td></tr
><tr id="gr_svn7768_1897"
><td id="1897"><a href="#1897">1897</a></td></tr
><tr id="gr_svn7768_1898"
><td id="1898"><a href="#1898">1898</a></td></tr
><tr id="gr_svn7768_1899"
><td id="1899"><a href="#1899">1899</a></td></tr
><tr id="gr_svn7768_1900"
><td id="1900"><a href="#1900">1900</a></td></tr
><tr id="gr_svn7768_1901"
><td id="1901"><a href="#1901">1901</a></td></tr
><tr id="gr_svn7768_1902"
><td id="1902"><a href="#1902">1902</a></td></tr
><tr id="gr_svn7768_1903"
><td id="1903"><a href="#1903">1903</a></td></tr
><tr id="gr_svn7768_1904"
><td id="1904"><a href="#1904">1904</a></td></tr
><tr id="gr_svn7768_1905"
><td id="1905"><a href="#1905">1905</a></td></tr
><tr id="gr_svn7768_1906"
><td id="1906"><a href="#1906">1906</a></td></tr
><tr id="gr_svn7768_1907"
><td id="1907"><a href="#1907">1907</a></td></tr
><tr id="gr_svn7768_1908"
><td id="1908"><a href="#1908">1908</a></td></tr
><tr id="gr_svn7768_1909"
><td id="1909"><a href="#1909">1909</a></td></tr
><tr id="gr_svn7768_1910"
><td id="1910"><a href="#1910">1910</a></td></tr
><tr id="gr_svn7768_1911"
><td id="1911"><a href="#1911">1911</a></td></tr
><tr id="gr_svn7768_1912"
><td id="1912"><a href="#1912">1912</a></td></tr
><tr id="gr_svn7768_1913"
><td id="1913"><a href="#1913">1913</a></td></tr
><tr id="gr_svn7768_1914"
><td id="1914"><a href="#1914">1914</a></td></tr
><tr id="gr_svn7768_1915"
><td id="1915"><a href="#1915">1915</a></td></tr
><tr id="gr_svn7768_1916"
><td id="1916"><a href="#1916">1916</a></td></tr
><tr id="gr_svn7768_1917"
><td id="1917"><a href="#1917">1917</a></td></tr
><tr id="gr_svn7768_1918"
><td id="1918"><a href="#1918">1918</a></td></tr
><tr id="gr_svn7768_1919"
><td id="1919"><a href="#1919">1919</a></td></tr
><tr id="gr_svn7768_1920"
><td id="1920"><a href="#1920">1920</a></td></tr
><tr id="gr_svn7768_1921"
><td id="1921"><a href="#1921">1921</a></td></tr
><tr id="gr_svn7768_1922"
><td id="1922"><a href="#1922">1922</a></td></tr
><tr id="gr_svn7768_1923"
><td id="1923"><a href="#1923">1923</a></td></tr
><tr id="gr_svn7768_1924"
><td id="1924"><a href="#1924">1924</a></td></tr
><tr id="gr_svn7768_1925"
><td id="1925"><a href="#1925">1925</a></td></tr
><tr id="gr_svn7768_1926"
><td id="1926"><a href="#1926">1926</a></td></tr
><tr id="gr_svn7768_1927"
><td id="1927"><a href="#1927">1927</a></td></tr
><tr id="gr_svn7768_1928"
><td id="1928"><a href="#1928">1928</a></td></tr
><tr id="gr_svn7768_1929"
><td id="1929"><a href="#1929">1929</a></td></tr
><tr id="gr_svn7768_1930"
><td id="1930"><a href="#1930">1930</a></td></tr
><tr id="gr_svn7768_1931"
><td id="1931"><a href="#1931">1931</a></td></tr
><tr id="gr_svn7768_1932"
><td id="1932"><a href="#1932">1932</a></td></tr
><tr id="gr_svn7768_1933"
><td id="1933"><a href="#1933">1933</a></td></tr
><tr id="gr_svn7768_1934"
><td id="1934"><a href="#1934">1934</a></td></tr
><tr id="gr_svn7768_1935"
><td id="1935"><a href="#1935">1935</a></td></tr
><tr id="gr_svn7768_1936"
><td id="1936"><a href="#1936">1936</a></td></tr
><tr id="gr_svn7768_1937"
><td id="1937"><a href="#1937">1937</a></td></tr
><tr id="gr_svn7768_1938"
><td id="1938"><a href="#1938">1938</a></td></tr
><tr id="gr_svn7768_1939"
><td id="1939"><a href="#1939">1939</a></td></tr
><tr id="gr_svn7768_1940"
><td id="1940"><a href="#1940">1940</a></td></tr
><tr id="gr_svn7768_1941"
><td id="1941"><a href="#1941">1941</a></td></tr
><tr id="gr_svn7768_1942"
><td id="1942"><a href="#1942">1942</a></td></tr
><tr id="gr_svn7768_1943"
><td id="1943"><a href="#1943">1943</a></td></tr
><tr id="gr_svn7768_1944"
><td id="1944"><a href="#1944">1944</a></td></tr
><tr id="gr_svn7768_1945"
><td id="1945"><a href="#1945">1945</a></td></tr
><tr id="gr_svn7768_1946"
><td id="1946"><a href="#1946">1946</a></td></tr
><tr id="gr_svn7768_1947"
><td id="1947"><a href="#1947">1947</a></td></tr
><tr id="gr_svn7768_1948"
><td id="1948"><a href="#1948">1948</a></td></tr
><tr id="gr_svn7768_1949"
><td id="1949"><a href="#1949">1949</a></td></tr
><tr id="gr_svn7768_1950"
><td id="1950"><a href="#1950">1950</a></td></tr
><tr id="gr_svn7768_1951"
><td id="1951"><a href="#1951">1951</a></td></tr
><tr id="gr_svn7768_1952"
><td id="1952"><a href="#1952">1952</a></td></tr
><tr id="gr_svn7768_1953"
><td id="1953"><a href="#1953">1953</a></td></tr
><tr id="gr_svn7768_1954"
><td id="1954"><a href="#1954">1954</a></td></tr
><tr id="gr_svn7768_1955"
><td id="1955"><a href="#1955">1955</a></td></tr
><tr id="gr_svn7768_1956"
><td id="1956"><a href="#1956">1956</a></td></tr
><tr id="gr_svn7768_1957"
><td id="1957"><a href="#1957">1957</a></td></tr
><tr id="gr_svn7768_1958"
><td id="1958"><a href="#1958">1958</a></td></tr
><tr id="gr_svn7768_1959"
><td id="1959"><a href="#1959">1959</a></td></tr
><tr id="gr_svn7768_1960"
><td id="1960"><a href="#1960">1960</a></td></tr
><tr id="gr_svn7768_1961"
><td id="1961"><a href="#1961">1961</a></td></tr
><tr id="gr_svn7768_1962"
><td id="1962"><a href="#1962">1962</a></td></tr
><tr id="gr_svn7768_1963"
><td id="1963"><a href="#1963">1963</a></td></tr
><tr id="gr_svn7768_1964"
><td id="1964"><a href="#1964">1964</a></td></tr
><tr id="gr_svn7768_1965"
><td id="1965"><a href="#1965">1965</a></td></tr
><tr id="gr_svn7768_1966"
><td id="1966"><a href="#1966">1966</a></td></tr
><tr id="gr_svn7768_1967"
><td id="1967"><a href="#1967">1967</a></td></tr
><tr id="gr_svn7768_1968"
><td id="1968"><a href="#1968">1968</a></td></tr
><tr id="gr_svn7768_1969"
><td id="1969"><a href="#1969">1969</a></td></tr
><tr id="gr_svn7768_1970"
><td id="1970"><a href="#1970">1970</a></td></tr
><tr id="gr_svn7768_1971"
><td id="1971"><a href="#1971">1971</a></td></tr
><tr id="gr_svn7768_1972"
><td id="1972"><a href="#1972">1972</a></td></tr
><tr id="gr_svn7768_1973"
><td id="1973"><a href="#1973">1973</a></td></tr
><tr id="gr_svn7768_1974"
><td id="1974"><a href="#1974">1974</a></td></tr
><tr id="gr_svn7768_1975"
><td id="1975"><a href="#1975">1975</a></td></tr
><tr id="gr_svn7768_1976"
><td id="1976"><a href="#1976">1976</a></td></tr
><tr id="gr_svn7768_1977"
><td id="1977"><a href="#1977">1977</a></td></tr
><tr id="gr_svn7768_1978"
><td id="1978"><a href="#1978">1978</a></td></tr
><tr id="gr_svn7768_1979"
><td id="1979"><a href="#1979">1979</a></td></tr
><tr id="gr_svn7768_1980"
><td id="1980"><a href="#1980">1980</a></td></tr
><tr id="gr_svn7768_1981"
><td id="1981"><a href="#1981">1981</a></td></tr
><tr id="gr_svn7768_1982"
><td id="1982"><a href="#1982">1982</a></td></tr
><tr id="gr_svn7768_1983"
><td id="1983"><a href="#1983">1983</a></td></tr
><tr id="gr_svn7768_1984"
><td id="1984"><a href="#1984">1984</a></td></tr
><tr id="gr_svn7768_1985"
><td id="1985"><a href="#1985">1985</a></td></tr
><tr id="gr_svn7768_1986"
><td id="1986"><a href="#1986">1986</a></td></tr
><tr id="gr_svn7768_1987"
><td id="1987"><a href="#1987">1987</a></td></tr
><tr id="gr_svn7768_1988"
><td id="1988"><a href="#1988">1988</a></td></tr
><tr id="gr_svn7768_1989"
><td id="1989"><a href="#1989">1989</a></td></tr
><tr id="gr_svn7768_1990"
><td id="1990"><a href="#1990">1990</a></td></tr
><tr id="gr_svn7768_1991"
><td id="1991"><a href="#1991">1991</a></td></tr
><tr id="gr_svn7768_1992"
><td id="1992"><a href="#1992">1992</a></td></tr
><tr id="gr_svn7768_1993"
><td id="1993"><a href="#1993">1993</a></td></tr
><tr id="gr_svn7768_1994"
><td id="1994"><a href="#1994">1994</a></td></tr
><tr id="gr_svn7768_1995"
><td id="1995"><a href="#1995">1995</a></td></tr
><tr id="gr_svn7768_1996"
><td id="1996"><a href="#1996">1996</a></td></tr
><tr id="gr_svn7768_1997"
><td id="1997"><a href="#1997">1997</a></td></tr
><tr id="gr_svn7768_1998"
><td id="1998"><a href="#1998">1998</a></td></tr
><tr id="gr_svn7768_1999"
><td id="1999"><a href="#1999">1999</a></td></tr
><tr id="gr_svn7768_2000"
><td id="2000"><a href="#2000">2000</a></td></tr
><tr id="gr_svn7768_2001"
><td id="2001"><a href="#2001">2001</a></td></tr
><tr id="gr_svn7768_2002"
><td id="2002"><a href="#2002">2002</a></td></tr
><tr id="gr_svn7768_2003"
><td id="2003"><a href="#2003">2003</a></td></tr
><tr id="gr_svn7768_2004"
><td id="2004"><a href="#2004">2004</a></td></tr
><tr id="gr_svn7768_2005"
><td id="2005"><a href="#2005">2005</a></td></tr
><tr id="gr_svn7768_2006"
><td id="2006"><a href="#2006">2006</a></td></tr
><tr id="gr_svn7768_2007"
><td id="2007"><a href="#2007">2007</a></td></tr
><tr id="gr_svn7768_2008"
><td id="2008"><a href="#2008">2008</a></td></tr
><tr id="gr_svn7768_2009"
><td id="2009"><a href="#2009">2009</a></td></tr
><tr id="gr_svn7768_2010"
><td id="2010"><a href="#2010">2010</a></td></tr
><tr id="gr_svn7768_2011"
><td id="2011"><a href="#2011">2011</a></td></tr
><tr id="gr_svn7768_2012"
><td id="2012"><a href="#2012">2012</a></td></tr
><tr id="gr_svn7768_2013"
><td id="2013"><a href="#2013">2013</a></td></tr
><tr id="gr_svn7768_2014"
><td id="2014"><a href="#2014">2014</a></td></tr
><tr id="gr_svn7768_2015"
><td id="2015"><a href="#2015">2015</a></td></tr
><tr id="gr_svn7768_2016"
><td id="2016"><a href="#2016">2016</a></td></tr
><tr id="gr_svn7768_2017"
><td id="2017"><a href="#2017">2017</a></td></tr
><tr id="gr_svn7768_2018"
><td id="2018"><a href="#2018">2018</a></td></tr
><tr id="gr_svn7768_2019"
><td id="2019"><a href="#2019">2019</a></td></tr
><tr id="gr_svn7768_2020"
><td id="2020"><a href="#2020">2020</a></td></tr
><tr id="gr_svn7768_2021"
><td id="2021"><a href="#2021">2021</a></td></tr
><tr id="gr_svn7768_2022"
><td id="2022"><a href="#2022">2022</a></td></tr
><tr id="gr_svn7768_2023"
><td id="2023"><a href="#2023">2023</a></td></tr
><tr id="gr_svn7768_2024"
><td id="2024"><a href="#2024">2024</a></td></tr
><tr id="gr_svn7768_2025"
><td id="2025"><a href="#2025">2025</a></td></tr
><tr id="gr_svn7768_2026"
><td id="2026"><a href="#2026">2026</a></td></tr
><tr id="gr_svn7768_2027"
><td id="2027"><a href="#2027">2027</a></td></tr
><tr id="gr_svn7768_2028"
><td id="2028"><a href="#2028">2028</a></td></tr
><tr id="gr_svn7768_2029"
><td id="2029"><a href="#2029">2029</a></td></tr
><tr id="gr_svn7768_2030"
><td id="2030"><a href="#2030">2030</a></td></tr
><tr id="gr_svn7768_2031"
><td id="2031"><a href="#2031">2031</a></td></tr
><tr id="gr_svn7768_2032"
><td id="2032"><a href="#2032">2032</a></td></tr
><tr id="gr_svn7768_2033"
><td id="2033"><a href="#2033">2033</a></td></tr
><tr id="gr_svn7768_2034"
><td id="2034"><a href="#2034">2034</a></td></tr
><tr id="gr_svn7768_2035"
><td id="2035"><a href="#2035">2035</a></td></tr
><tr id="gr_svn7768_2036"
><td id="2036"><a href="#2036">2036</a></td></tr
><tr id="gr_svn7768_2037"
><td id="2037"><a href="#2037">2037</a></td></tr
><tr id="gr_svn7768_2038"
><td id="2038"><a href="#2038">2038</a></td></tr
><tr id="gr_svn7768_2039"
><td id="2039"><a href="#2039">2039</a></td></tr
><tr id="gr_svn7768_2040"
><td id="2040"><a href="#2040">2040</a></td></tr
><tr id="gr_svn7768_2041"
><td id="2041"><a href="#2041">2041</a></td></tr
><tr id="gr_svn7768_2042"
><td id="2042"><a href="#2042">2042</a></td></tr
><tr id="gr_svn7768_2043"
><td id="2043"><a href="#2043">2043</a></td></tr
><tr id="gr_svn7768_2044"
><td id="2044"><a href="#2044">2044</a></td></tr
><tr id="gr_svn7768_2045"
><td id="2045"><a href="#2045">2045</a></td></tr
><tr id="gr_svn7768_2046"
><td id="2046"><a href="#2046">2046</a></td></tr
><tr id="gr_svn7768_2047"
><td id="2047"><a href="#2047">2047</a></td></tr
><tr id="gr_svn7768_2048"
><td id="2048"><a href="#2048">2048</a></td></tr
><tr id="gr_svn7768_2049"
><td id="2049"><a href="#2049">2049</a></td></tr
><tr id="gr_svn7768_2050"
><td id="2050"><a href="#2050">2050</a></td></tr
><tr id="gr_svn7768_2051"
><td id="2051"><a href="#2051">2051</a></td></tr
><tr id="gr_svn7768_2052"
><td id="2052"><a href="#2052">2052</a></td></tr
><tr id="gr_svn7768_2053"
><td id="2053"><a href="#2053">2053</a></td></tr
><tr id="gr_svn7768_2054"
><td id="2054"><a href="#2054">2054</a></td></tr
><tr id="gr_svn7768_2055"
><td id="2055"><a href="#2055">2055</a></td></tr
><tr id="gr_svn7768_2056"
><td id="2056"><a href="#2056">2056</a></td></tr
><tr id="gr_svn7768_2057"
><td id="2057"><a href="#2057">2057</a></td></tr
><tr id="gr_svn7768_2058"
><td id="2058"><a href="#2058">2058</a></td></tr
><tr id="gr_svn7768_2059"
><td id="2059"><a href="#2059">2059</a></td></tr
><tr id="gr_svn7768_2060"
><td id="2060"><a href="#2060">2060</a></td></tr
><tr id="gr_svn7768_2061"
><td id="2061"><a href="#2061">2061</a></td></tr
><tr id="gr_svn7768_2062"
><td id="2062"><a href="#2062">2062</a></td></tr
><tr id="gr_svn7768_2063"
><td id="2063"><a href="#2063">2063</a></td></tr
><tr id="gr_svn7768_2064"
><td id="2064"><a href="#2064">2064</a></td></tr
><tr id="gr_svn7768_2065"
><td id="2065"><a href="#2065">2065</a></td></tr
><tr id="gr_svn7768_2066"
><td id="2066"><a href="#2066">2066</a></td></tr
><tr id="gr_svn7768_2067"
><td id="2067"><a href="#2067">2067</a></td></tr
><tr id="gr_svn7768_2068"
><td id="2068"><a href="#2068">2068</a></td></tr
><tr id="gr_svn7768_2069"
><td id="2069"><a href="#2069">2069</a></td></tr
><tr id="gr_svn7768_2070"
><td id="2070"><a href="#2070">2070</a></td></tr
><tr id="gr_svn7768_2071"
><td id="2071"><a href="#2071">2071</a></td></tr
><tr id="gr_svn7768_2072"
><td id="2072"><a href="#2072">2072</a></td></tr
><tr id="gr_svn7768_2073"
><td id="2073"><a href="#2073">2073</a></td></tr
><tr id="gr_svn7768_2074"
><td id="2074"><a href="#2074">2074</a></td></tr
><tr id="gr_svn7768_2075"
><td id="2075"><a href="#2075">2075</a></td></tr
><tr id="gr_svn7768_2076"
><td id="2076"><a href="#2076">2076</a></td></tr
><tr id="gr_svn7768_2077"
><td id="2077"><a href="#2077">2077</a></td></tr
><tr id="gr_svn7768_2078"
><td id="2078"><a href="#2078">2078</a></td></tr
><tr id="gr_svn7768_2079"
><td id="2079"><a href="#2079">2079</a></td></tr
><tr id="gr_svn7768_2080"
><td id="2080"><a href="#2080">2080</a></td></tr
><tr id="gr_svn7768_2081"
><td id="2081"><a href="#2081">2081</a></td></tr
><tr id="gr_svn7768_2082"
><td id="2082"><a href="#2082">2082</a></td></tr
><tr id="gr_svn7768_2083"
><td id="2083"><a href="#2083">2083</a></td></tr
><tr id="gr_svn7768_2084"
><td id="2084"><a href="#2084">2084</a></td></tr
><tr id="gr_svn7768_2085"
><td id="2085"><a href="#2085">2085</a></td></tr
><tr id="gr_svn7768_2086"
><td id="2086"><a href="#2086">2086</a></td></tr
><tr id="gr_svn7768_2087"
><td id="2087"><a href="#2087">2087</a></td></tr
><tr id="gr_svn7768_2088"
><td id="2088"><a href="#2088">2088</a></td></tr
><tr id="gr_svn7768_2089"
><td id="2089"><a href="#2089">2089</a></td></tr
><tr id="gr_svn7768_2090"
><td id="2090"><a href="#2090">2090</a></td></tr
><tr id="gr_svn7768_2091"
><td id="2091"><a href="#2091">2091</a></td></tr
><tr id="gr_svn7768_2092"
><td id="2092"><a href="#2092">2092</a></td></tr
><tr id="gr_svn7768_2093"
><td id="2093"><a href="#2093">2093</a></td></tr
><tr id="gr_svn7768_2094"
><td id="2094"><a href="#2094">2094</a></td></tr
><tr id="gr_svn7768_2095"
><td id="2095"><a href="#2095">2095</a></td></tr
><tr id="gr_svn7768_2096"
><td id="2096"><a href="#2096">2096</a></td></tr
><tr id="gr_svn7768_2097"
><td id="2097"><a href="#2097">2097</a></td></tr
><tr id="gr_svn7768_2098"
><td id="2098"><a href="#2098">2098</a></td></tr
><tr id="gr_svn7768_2099"
><td id="2099"><a href="#2099">2099</a></td></tr
><tr id="gr_svn7768_2100"
><td id="2100"><a href="#2100">2100</a></td></tr
><tr id="gr_svn7768_2101"
><td id="2101"><a href="#2101">2101</a></td></tr
><tr id="gr_svn7768_2102"
><td id="2102"><a href="#2102">2102</a></td></tr
><tr id="gr_svn7768_2103"
><td id="2103"><a href="#2103">2103</a></td></tr
><tr id="gr_svn7768_2104"
><td id="2104"><a href="#2104">2104</a></td></tr
><tr id="gr_svn7768_2105"
><td id="2105"><a href="#2105">2105</a></td></tr
><tr id="gr_svn7768_2106"
><td id="2106"><a href="#2106">2106</a></td></tr
><tr id="gr_svn7768_2107"
><td id="2107"><a href="#2107">2107</a></td></tr
><tr id="gr_svn7768_2108"
><td id="2108"><a href="#2108">2108</a></td></tr
><tr id="gr_svn7768_2109"
><td id="2109"><a href="#2109">2109</a></td></tr
><tr id="gr_svn7768_2110"
><td id="2110"><a href="#2110">2110</a></td></tr
><tr id="gr_svn7768_2111"
><td id="2111"><a href="#2111">2111</a></td></tr
><tr id="gr_svn7768_2112"
><td id="2112"><a href="#2112">2112</a></td></tr
><tr id="gr_svn7768_2113"
><td id="2113"><a href="#2113">2113</a></td></tr
><tr id="gr_svn7768_2114"
><td id="2114"><a href="#2114">2114</a></td></tr
><tr id="gr_svn7768_2115"
><td id="2115"><a href="#2115">2115</a></td></tr
><tr id="gr_svn7768_2116"
><td id="2116"><a href="#2116">2116</a></td></tr
><tr id="gr_svn7768_2117"
><td id="2117"><a href="#2117">2117</a></td></tr
><tr id="gr_svn7768_2118"
><td id="2118"><a href="#2118">2118</a></td></tr
><tr id="gr_svn7768_2119"
><td id="2119"><a href="#2119">2119</a></td></tr
><tr id="gr_svn7768_2120"
><td id="2120"><a href="#2120">2120</a></td></tr
><tr id="gr_svn7768_2121"
><td id="2121"><a href="#2121">2121</a></td></tr
><tr id="gr_svn7768_2122"
><td id="2122"><a href="#2122">2122</a></td></tr
><tr id="gr_svn7768_2123"
><td id="2123"><a href="#2123">2123</a></td></tr
><tr id="gr_svn7768_2124"
><td id="2124"><a href="#2124">2124</a></td></tr
><tr id="gr_svn7768_2125"
><td id="2125"><a href="#2125">2125</a></td></tr
><tr id="gr_svn7768_2126"
><td id="2126"><a href="#2126">2126</a></td></tr
><tr id="gr_svn7768_2127"
><td id="2127"><a href="#2127">2127</a></td></tr
><tr id="gr_svn7768_2128"
><td id="2128"><a href="#2128">2128</a></td></tr
><tr id="gr_svn7768_2129"
><td id="2129"><a href="#2129">2129</a></td></tr
><tr id="gr_svn7768_2130"
><td id="2130"><a href="#2130">2130</a></td></tr
><tr id="gr_svn7768_2131"
><td id="2131"><a href="#2131">2131</a></td></tr
><tr id="gr_svn7768_2132"
><td id="2132"><a href="#2132">2132</a></td></tr
><tr id="gr_svn7768_2133"
><td id="2133"><a href="#2133">2133</a></td></tr
><tr id="gr_svn7768_2134"
><td id="2134"><a href="#2134">2134</a></td></tr
><tr id="gr_svn7768_2135"
><td id="2135"><a href="#2135">2135</a></td></tr
><tr id="gr_svn7768_2136"
><td id="2136"><a href="#2136">2136</a></td></tr
><tr id="gr_svn7768_2137"
><td id="2137"><a href="#2137">2137</a></td></tr
><tr id="gr_svn7768_2138"
><td id="2138"><a href="#2138">2138</a></td></tr
><tr id="gr_svn7768_2139"
><td id="2139"><a href="#2139">2139</a></td></tr
><tr id="gr_svn7768_2140"
><td id="2140"><a href="#2140">2140</a></td></tr
><tr id="gr_svn7768_2141"
><td id="2141"><a href="#2141">2141</a></td></tr
><tr id="gr_svn7768_2142"
><td id="2142"><a href="#2142">2142</a></td></tr
><tr id="gr_svn7768_2143"
><td id="2143"><a href="#2143">2143</a></td></tr
><tr id="gr_svn7768_2144"
><td id="2144"><a href="#2144">2144</a></td></tr
><tr id="gr_svn7768_2145"
><td id="2145"><a href="#2145">2145</a></td></tr
><tr id="gr_svn7768_2146"
><td id="2146"><a href="#2146">2146</a></td></tr
><tr id="gr_svn7768_2147"
><td id="2147"><a href="#2147">2147</a></td></tr
><tr id="gr_svn7768_2148"
><td id="2148"><a href="#2148">2148</a></td></tr
><tr id="gr_svn7768_2149"
><td id="2149"><a href="#2149">2149</a></td></tr
><tr id="gr_svn7768_2150"
><td id="2150"><a href="#2150">2150</a></td></tr
><tr id="gr_svn7768_2151"
><td id="2151"><a href="#2151">2151</a></td></tr
><tr id="gr_svn7768_2152"
><td id="2152"><a href="#2152">2152</a></td></tr
><tr id="gr_svn7768_2153"
><td id="2153"><a href="#2153">2153</a></td></tr
><tr id="gr_svn7768_2154"
><td id="2154"><a href="#2154">2154</a></td></tr
><tr id="gr_svn7768_2155"
><td id="2155"><a href="#2155">2155</a></td></tr
><tr id="gr_svn7768_2156"
><td id="2156"><a href="#2156">2156</a></td></tr
><tr id="gr_svn7768_2157"
><td id="2157"><a href="#2157">2157</a></td></tr
><tr id="gr_svn7768_2158"
><td id="2158"><a href="#2158">2158</a></td></tr
><tr id="gr_svn7768_2159"
><td id="2159"><a href="#2159">2159</a></td></tr
><tr id="gr_svn7768_2160"
><td id="2160"><a href="#2160">2160</a></td></tr
><tr id="gr_svn7768_2161"
><td id="2161"><a href="#2161">2161</a></td></tr
><tr id="gr_svn7768_2162"
><td id="2162"><a href="#2162">2162</a></td></tr
><tr id="gr_svn7768_2163"
><td id="2163"><a href="#2163">2163</a></td></tr
><tr id="gr_svn7768_2164"
><td id="2164"><a href="#2164">2164</a></td></tr
><tr id="gr_svn7768_2165"
><td id="2165"><a href="#2165">2165</a></td></tr
><tr id="gr_svn7768_2166"
><td id="2166"><a href="#2166">2166</a></td></tr
><tr id="gr_svn7768_2167"
><td id="2167"><a href="#2167">2167</a></td></tr
><tr id="gr_svn7768_2168"
><td id="2168"><a href="#2168">2168</a></td></tr
><tr id="gr_svn7768_2169"
><td id="2169"><a href="#2169">2169</a></td></tr
><tr id="gr_svn7768_2170"
><td id="2170"><a href="#2170">2170</a></td></tr
><tr id="gr_svn7768_2171"
><td id="2171"><a href="#2171">2171</a></td></tr
><tr id="gr_svn7768_2172"
><td id="2172"><a href="#2172">2172</a></td></tr
><tr id="gr_svn7768_2173"
><td id="2173"><a href="#2173">2173</a></td></tr
><tr id="gr_svn7768_2174"
><td id="2174"><a href="#2174">2174</a></td></tr
><tr id="gr_svn7768_2175"
><td id="2175"><a href="#2175">2175</a></td></tr
><tr id="gr_svn7768_2176"
><td id="2176"><a href="#2176">2176</a></td></tr
><tr id="gr_svn7768_2177"
><td id="2177"><a href="#2177">2177</a></td></tr
><tr id="gr_svn7768_2178"
><td id="2178"><a href="#2178">2178</a></td></tr
><tr id="gr_svn7768_2179"
><td id="2179"><a href="#2179">2179</a></td></tr
><tr id="gr_svn7768_2180"
><td id="2180"><a href="#2180">2180</a></td></tr
><tr id="gr_svn7768_2181"
><td id="2181"><a href="#2181">2181</a></td></tr
><tr id="gr_svn7768_2182"
><td id="2182"><a href="#2182">2182</a></td></tr
><tr id="gr_svn7768_2183"
><td id="2183"><a href="#2183">2183</a></td></tr
><tr id="gr_svn7768_2184"
><td id="2184"><a href="#2184">2184</a></td></tr
><tr id="gr_svn7768_2185"
><td id="2185"><a href="#2185">2185</a></td></tr
><tr id="gr_svn7768_2186"
><td id="2186"><a href="#2186">2186</a></td></tr
><tr id="gr_svn7768_2187"
><td id="2187"><a href="#2187">2187</a></td></tr
><tr id="gr_svn7768_2188"
><td id="2188"><a href="#2188">2188</a></td></tr
><tr id="gr_svn7768_2189"
><td id="2189"><a href="#2189">2189</a></td></tr
><tr id="gr_svn7768_2190"
><td id="2190"><a href="#2190">2190</a></td></tr
><tr id="gr_svn7768_2191"
><td id="2191"><a href="#2191">2191</a></td></tr
><tr id="gr_svn7768_2192"
><td id="2192"><a href="#2192">2192</a></td></tr
><tr id="gr_svn7768_2193"
><td id="2193"><a href="#2193">2193</a></td></tr
><tr id="gr_svn7768_2194"
><td id="2194"><a href="#2194">2194</a></td></tr
><tr id="gr_svn7768_2195"
><td id="2195"><a href="#2195">2195</a></td></tr
><tr id="gr_svn7768_2196"
><td id="2196"><a href="#2196">2196</a></td></tr
><tr id="gr_svn7768_2197"
><td id="2197"><a href="#2197">2197</a></td></tr
><tr id="gr_svn7768_2198"
><td id="2198"><a href="#2198">2198</a></td></tr
><tr id="gr_svn7768_2199"
><td id="2199"><a href="#2199">2199</a></td></tr
><tr id="gr_svn7768_2200"
><td id="2200"><a href="#2200">2200</a></td></tr
><tr id="gr_svn7768_2201"
><td id="2201"><a href="#2201">2201</a></td></tr
><tr id="gr_svn7768_2202"
><td id="2202"><a href="#2202">2202</a></td></tr
><tr id="gr_svn7768_2203"
><td id="2203"><a href="#2203">2203</a></td></tr
><tr id="gr_svn7768_2204"
><td id="2204"><a href="#2204">2204</a></td></tr
><tr id="gr_svn7768_2205"
><td id="2205"><a href="#2205">2205</a></td></tr
><tr id="gr_svn7768_2206"
><td id="2206"><a href="#2206">2206</a></td></tr
><tr id="gr_svn7768_2207"
><td id="2207"><a href="#2207">2207</a></td></tr
><tr id="gr_svn7768_2208"
><td id="2208"><a href="#2208">2208</a></td></tr
><tr id="gr_svn7768_2209"
><td id="2209"><a href="#2209">2209</a></td></tr
><tr id="gr_svn7768_2210"
><td id="2210"><a href="#2210">2210</a></td></tr
><tr id="gr_svn7768_2211"
><td id="2211"><a href="#2211">2211</a></td></tr
><tr id="gr_svn7768_2212"
><td id="2212"><a href="#2212">2212</a></td></tr
><tr id="gr_svn7768_2213"
><td id="2213"><a href="#2213">2213</a></td></tr
><tr id="gr_svn7768_2214"
><td id="2214"><a href="#2214">2214</a></td></tr
><tr id="gr_svn7768_2215"
><td id="2215"><a href="#2215">2215</a></td></tr
><tr id="gr_svn7768_2216"
><td id="2216"><a href="#2216">2216</a></td></tr
><tr id="gr_svn7768_2217"
><td id="2217"><a href="#2217">2217</a></td></tr
><tr id="gr_svn7768_2218"
><td id="2218"><a href="#2218">2218</a></td></tr
><tr id="gr_svn7768_2219"
><td id="2219"><a href="#2219">2219</a></td></tr
><tr id="gr_svn7768_2220"
><td id="2220"><a href="#2220">2220</a></td></tr
><tr id="gr_svn7768_2221"
><td id="2221"><a href="#2221">2221</a></td></tr
><tr id="gr_svn7768_2222"
><td id="2222"><a href="#2222">2222</a></td></tr
><tr id="gr_svn7768_2223"
><td id="2223"><a href="#2223">2223</a></td></tr
><tr id="gr_svn7768_2224"
><td id="2224"><a href="#2224">2224</a></td></tr
><tr id="gr_svn7768_2225"
><td id="2225"><a href="#2225">2225</a></td></tr
><tr id="gr_svn7768_2226"
><td id="2226"><a href="#2226">2226</a></td></tr
><tr id="gr_svn7768_2227"
><td id="2227"><a href="#2227">2227</a></td></tr
><tr id="gr_svn7768_2228"
><td id="2228"><a href="#2228">2228</a></td></tr
><tr id="gr_svn7768_2229"
><td id="2229"><a href="#2229">2229</a></td></tr
><tr id="gr_svn7768_2230"
><td id="2230"><a href="#2230">2230</a></td></tr
><tr id="gr_svn7768_2231"
><td id="2231"><a href="#2231">2231</a></td></tr
><tr id="gr_svn7768_2232"
><td id="2232"><a href="#2232">2232</a></td></tr
><tr id="gr_svn7768_2233"
><td id="2233"><a href="#2233">2233</a></td></tr
><tr id="gr_svn7768_2234"
><td id="2234"><a href="#2234">2234</a></td></tr
><tr id="gr_svn7768_2235"
><td id="2235"><a href="#2235">2235</a></td></tr
><tr id="gr_svn7768_2236"
><td id="2236"><a href="#2236">2236</a></td></tr
><tr id="gr_svn7768_2237"
><td id="2237"><a href="#2237">2237</a></td></tr
><tr id="gr_svn7768_2238"
><td id="2238"><a href="#2238">2238</a></td></tr
><tr id="gr_svn7768_2239"
><td id="2239"><a href="#2239">2239</a></td></tr
><tr id="gr_svn7768_2240"
><td id="2240"><a href="#2240">2240</a></td></tr
><tr id="gr_svn7768_2241"
><td id="2241"><a href="#2241">2241</a></td></tr
><tr id="gr_svn7768_2242"
><td id="2242"><a href="#2242">2242</a></td></tr
><tr id="gr_svn7768_2243"
><td id="2243"><a href="#2243">2243</a></td></tr
><tr id="gr_svn7768_2244"
><td id="2244"><a href="#2244">2244</a></td></tr
><tr id="gr_svn7768_2245"
><td id="2245"><a href="#2245">2245</a></td></tr
><tr id="gr_svn7768_2246"
><td id="2246"><a href="#2246">2246</a></td></tr
><tr id="gr_svn7768_2247"
><td id="2247"><a href="#2247">2247</a></td></tr
><tr id="gr_svn7768_2248"
><td id="2248"><a href="#2248">2248</a></td></tr
><tr id="gr_svn7768_2249"
><td id="2249"><a href="#2249">2249</a></td></tr
><tr id="gr_svn7768_2250"
><td id="2250"><a href="#2250">2250</a></td></tr
><tr id="gr_svn7768_2251"
><td id="2251"><a href="#2251">2251</a></td></tr
><tr id="gr_svn7768_2252"
><td id="2252"><a href="#2252">2252</a></td></tr
><tr id="gr_svn7768_2253"
><td id="2253"><a href="#2253">2253</a></td></tr
><tr id="gr_svn7768_2254"
><td id="2254"><a href="#2254">2254</a></td></tr
><tr id="gr_svn7768_2255"
><td id="2255"><a href="#2255">2255</a></td></tr
><tr id="gr_svn7768_2256"
><td id="2256"><a href="#2256">2256</a></td></tr
><tr id="gr_svn7768_2257"
><td id="2257"><a href="#2257">2257</a></td></tr
><tr id="gr_svn7768_2258"
><td id="2258"><a href="#2258">2258</a></td></tr
><tr id="gr_svn7768_2259"
><td id="2259"><a href="#2259">2259</a></td></tr
><tr id="gr_svn7768_2260"
><td id="2260"><a href="#2260">2260</a></td></tr
><tr id="gr_svn7768_2261"
><td id="2261"><a href="#2261">2261</a></td></tr
><tr id="gr_svn7768_2262"
><td id="2262"><a href="#2262">2262</a></td></tr
><tr id="gr_svn7768_2263"
><td id="2263"><a href="#2263">2263</a></td></tr
><tr id="gr_svn7768_2264"
><td id="2264"><a href="#2264">2264</a></td></tr
><tr id="gr_svn7768_2265"
><td id="2265"><a href="#2265">2265</a></td></tr
><tr id="gr_svn7768_2266"
><td id="2266"><a href="#2266">2266</a></td></tr
><tr id="gr_svn7768_2267"
><td id="2267"><a href="#2267">2267</a></td></tr
><tr id="gr_svn7768_2268"
><td id="2268"><a href="#2268">2268</a></td></tr
><tr id="gr_svn7768_2269"
><td id="2269"><a href="#2269">2269</a></td></tr
><tr id="gr_svn7768_2270"
><td id="2270"><a href="#2270">2270</a></td></tr
><tr id="gr_svn7768_2271"
><td id="2271"><a href="#2271">2271</a></td></tr
><tr id="gr_svn7768_2272"
><td id="2272"><a href="#2272">2272</a></td></tr
><tr id="gr_svn7768_2273"
><td id="2273"><a href="#2273">2273</a></td></tr
><tr id="gr_svn7768_2274"
><td id="2274"><a href="#2274">2274</a></td></tr
><tr id="gr_svn7768_2275"
><td id="2275"><a href="#2275">2275</a></td></tr
><tr id="gr_svn7768_2276"
><td id="2276"><a href="#2276">2276</a></td></tr
><tr id="gr_svn7768_2277"
><td id="2277"><a href="#2277">2277</a></td></tr
><tr id="gr_svn7768_2278"
><td id="2278"><a href="#2278">2278</a></td></tr
><tr id="gr_svn7768_2279"
><td id="2279"><a href="#2279">2279</a></td></tr
><tr id="gr_svn7768_2280"
><td id="2280"><a href="#2280">2280</a></td></tr
><tr id="gr_svn7768_2281"
><td id="2281"><a href="#2281">2281</a></td></tr
><tr id="gr_svn7768_2282"
><td id="2282"><a href="#2282">2282</a></td></tr
><tr id="gr_svn7768_2283"
><td id="2283"><a href="#2283">2283</a></td></tr
><tr id="gr_svn7768_2284"
><td id="2284"><a href="#2284">2284</a></td></tr
><tr id="gr_svn7768_2285"
><td id="2285"><a href="#2285">2285</a></td></tr
><tr id="gr_svn7768_2286"
><td id="2286"><a href="#2286">2286</a></td></tr
><tr id="gr_svn7768_2287"
><td id="2287"><a href="#2287">2287</a></td></tr
><tr id="gr_svn7768_2288"
><td id="2288"><a href="#2288">2288</a></td></tr
><tr id="gr_svn7768_2289"
><td id="2289"><a href="#2289">2289</a></td></tr
><tr id="gr_svn7768_2290"
><td id="2290"><a href="#2290">2290</a></td></tr
><tr id="gr_svn7768_2291"
><td id="2291"><a href="#2291">2291</a></td></tr
><tr id="gr_svn7768_2292"
><td id="2292"><a href="#2292">2292</a></td></tr
><tr id="gr_svn7768_2293"
><td id="2293"><a href="#2293">2293</a></td></tr
><tr id="gr_svn7768_2294"
><td id="2294"><a href="#2294">2294</a></td></tr
><tr id="gr_svn7768_2295"
><td id="2295"><a href="#2295">2295</a></td></tr
><tr id="gr_svn7768_2296"
><td id="2296"><a href="#2296">2296</a></td></tr
><tr id="gr_svn7768_2297"
><td id="2297"><a href="#2297">2297</a></td></tr
><tr id="gr_svn7768_2298"
><td id="2298"><a href="#2298">2298</a></td></tr
><tr id="gr_svn7768_2299"
><td id="2299"><a href="#2299">2299</a></td></tr
><tr id="gr_svn7768_2300"
><td id="2300"><a href="#2300">2300</a></td></tr
><tr id="gr_svn7768_2301"
><td id="2301"><a href="#2301">2301</a></td></tr
><tr id="gr_svn7768_2302"
><td id="2302"><a href="#2302">2302</a></td></tr
><tr id="gr_svn7768_2303"
><td id="2303"><a href="#2303">2303</a></td></tr
><tr id="gr_svn7768_2304"
><td id="2304"><a href="#2304">2304</a></td></tr
><tr id="gr_svn7768_2305"
><td id="2305"><a href="#2305">2305</a></td></tr
><tr id="gr_svn7768_2306"
><td id="2306"><a href="#2306">2306</a></td></tr
><tr id="gr_svn7768_2307"
><td id="2307"><a href="#2307">2307</a></td></tr
><tr id="gr_svn7768_2308"
><td id="2308"><a href="#2308">2308</a></td></tr
><tr id="gr_svn7768_2309"
><td id="2309"><a href="#2309">2309</a></td></tr
><tr id="gr_svn7768_2310"
><td id="2310"><a href="#2310">2310</a></td></tr
><tr id="gr_svn7768_2311"
><td id="2311"><a href="#2311">2311</a></td></tr
><tr id="gr_svn7768_2312"
><td id="2312"><a href="#2312">2312</a></td></tr
><tr id="gr_svn7768_2313"
><td id="2313"><a href="#2313">2313</a></td></tr
><tr id="gr_svn7768_2314"
><td id="2314"><a href="#2314">2314</a></td></tr
><tr id="gr_svn7768_2315"
><td id="2315"><a href="#2315">2315</a></td></tr
><tr id="gr_svn7768_2316"
><td id="2316"><a href="#2316">2316</a></td></tr
><tr id="gr_svn7768_2317"
><td id="2317"><a href="#2317">2317</a></td></tr
><tr id="gr_svn7768_2318"
><td id="2318"><a href="#2318">2318</a></td></tr
><tr id="gr_svn7768_2319"
><td id="2319"><a href="#2319">2319</a></td></tr
><tr id="gr_svn7768_2320"
><td id="2320"><a href="#2320">2320</a></td></tr
><tr id="gr_svn7768_2321"
><td id="2321"><a href="#2321">2321</a></td></tr
><tr id="gr_svn7768_2322"
><td id="2322"><a href="#2322">2322</a></td></tr
><tr id="gr_svn7768_2323"
><td id="2323"><a href="#2323">2323</a></td></tr
><tr id="gr_svn7768_2324"
><td id="2324"><a href="#2324">2324</a></td></tr
><tr id="gr_svn7768_2325"
><td id="2325"><a href="#2325">2325</a></td></tr
><tr id="gr_svn7768_2326"
><td id="2326"><a href="#2326">2326</a></td></tr
><tr id="gr_svn7768_2327"
><td id="2327"><a href="#2327">2327</a></td></tr
><tr id="gr_svn7768_2328"
><td id="2328"><a href="#2328">2328</a></td></tr
><tr id="gr_svn7768_2329"
><td id="2329"><a href="#2329">2329</a></td></tr
><tr id="gr_svn7768_2330"
><td id="2330"><a href="#2330">2330</a></td></tr
><tr id="gr_svn7768_2331"
><td id="2331"><a href="#2331">2331</a></td></tr
><tr id="gr_svn7768_2332"
><td id="2332"><a href="#2332">2332</a></td></tr
><tr id="gr_svn7768_2333"
><td id="2333"><a href="#2333">2333</a></td></tr
><tr id="gr_svn7768_2334"
><td id="2334"><a href="#2334">2334</a></td></tr
><tr id="gr_svn7768_2335"
><td id="2335"><a href="#2335">2335</a></td></tr
><tr id="gr_svn7768_2336"
><td id="2336"><a href="#2336">2336</a></td></tr
><tr id="gr_svn7768_2337"
><td id="2337"><a href="#2337">2337</a></td></tr
><tr id="gr_svn7768_2338"
><td id="2338"><a href="#2338">2338</a></td></tr
><tr id="gr_svn7768_2339"
><td id="2339"><a href="#2339">2339</a></td></tr
><tr id="gr_svn7768_2340"
><td id="2340"><a href="#2340">2340</a></td></tr
><tr id="gr_svn7768_2341"
><td id="2341"><a href="#2341">2341</a></td></tr
><tr id="gr_svn7768_2342"
><td id="2342"><a href="#2342">2342</a></td></tr
><tr id="gr_svn7768_2343"
><td id="2343"><a href="#2343">2343</a></td></tr
><tr id="gr_svn7768_2344"
><td id="2344"><a href="#2344">2344</a></td></tr
><tr id="gr_svn7768_2345"
><td id="2345"><a href="#2345">2345</a></td></tr
><tr id="gr_svn7768_2346"
><td id="2346"><a href="#2346">2346</a></td></tr
><tr id="gr_svn7768_2347"
><td id="2347"><a href="#2347">2347</a></td></tr
><tr id="gr_svn7768_2348"
><td id="2348"><a href="#2348">2348</a></td></tr
><tr id="gr_svn7768_2349"
><td id="2349"><a href="#2349">2349</a></td></tr
><tr id="gr_svn7768_2350"
><td id="2350"><a href="#2350">2350</a></td></tr
><tr id="gr_svn7768_2351"
><td id="2351"><a href="#2351">2351</a></td></tr
><tr id="gr_svn7768_2352"
><td id="2352"><a href="#2352">2352</a></td></tr
><tr id="gr_svn7768_2353"
><td id="2353"><a href="#2353">2353</a></td></tr
><tr id="gr_svn7768_2354"
><td id="2354"><a href="#2354">2354</a></td></tr
><tr id="gr_svn7768_2355"
><td id="2355"><a href="#2355">2355</a></td></tr
><tr id="gr_svn7768_2356"
><td id="2356"><a href="#2356">2356</a></td></tr
><tr id="gr_svn7768_2357"
><td id="2357"><a href="#2357">2357</a></td></tr
><tr id="gr_svn7768_2358"
><td id="2358"><a href="#2358">2358</a></td></tr
><tr id="gr_svn7768_2359"
><td id="2359"><a href="#2359">2359</a></td></tr
><tr id="gr_svn7768_2360"
><td id="2360"><a href="#2360">2360</a></td></tr
><tr id="gr_svn7768_2361"
><td id="2361"><a href="#2361">2361</a></td></tr
><tr id="gr_svn7768_2362"
><td id="2362"><a href="#2362">2362</a></td></tr
><tr id="gr_svn7768_2363"
><td id="2363"><a href="#2363">2363</a></td></tr
><tr id="gr_svn7768_2364"
><td id="2364"><a href="#2364">2364</a></td></tr
><tr id="gr_svn7768_2365"
><td id="2365"><a href="#2365">2365</a></td></tr
><tr id="gr_svn7768_2366"
><td id="2366"><a href="#2366">2366</a></td></tr
><tr id="gr_svn7768_2367"
><td id="2367"><a href="#2367">2367</a></td></tr
><tr id="gr_svn7768_2368"
><td id="2368"><a href="#2368">2368</a></td></tr
><tr id="gr_svn7768_2369"
><td id="2369"><a href="#2369">2369</a></td></tr
><tr id="gr_svn7768_2370"
><td id="2370"><a href="#2370">2370</a></td></tr
><tr id="gr_svn7768_2371"
><td id="2371"><a href="#2371">2371</a></td></tr
><tr id="gr_svn7768_2372"
><td id="2372"><a href="#2372">2372</a></td></tr
><tr id="gr_svn7768_2373"
><td id="2373"><a href="#2373">2373</a></td></tr
><tr id="gr_svn7768_2374"
><td id="2374"><a href="#2374">2374</a></td></tr
><tr id="gr_svn7768_2375"
><td id="2375"><a href="#2375">2375</a></td></tr
><tr id="gr_svn7768_2376"
><td id="2376"><a href="#2376">2376</a></td></tr
><tr id="gr_svn7768_2377"
><td id="2377"><a href="#2377">2377</a></td></tr
><tr id="gr_svn7768_2378"
><td id="2378"><a href="#2378">2378</a></td></tr
><tr id="gr_svn7768_2379"
><td id="2379"><a href="#2379">2379</a></td></tr
><tr id="gr_svn7768_2380"
><td id="2380"><a href="#2380">2380</a></td></tr
><tr id="gr_svn7768_2381"
><td id="2381"><a href="#2381">2381</a></td></tr
><tr id="gr_svn7768_2382"
><td id="2382"><a href="#2382">2382</a></td></tr
><tr id="gr_svn7768_2383"
><td id="2383"><a href="#2383">2383</a></td></tr
><tr id="gr_svn7768_2384"
><td id="2384"><a href="#2384">2384</a></td></tr
><tr id="gr_svn7768_2385"
><td id="2385"><a href="#2385">2385</a></td></tr
><tr id="gr_svn7768_2386"
><td id="2386"><a href="#2386">2386</a></td></tr
><tr id="gr_svn7768_2387"
><td id="2387"><a href="#2387">2387</a></td></tr
><tr id="gr_svn7768_2388"
><td id="2388"><a href="#2388">2388</a></td></tr
><tr id="gr_svn7768_2389"
><td id="2389"><a href="#2389">2389</a></td></tr
><tr id="gr_svn7768_2390"
><td id="2390"><a href="#2390">2390</a></td></tr
><tr id="gr_svn7768_2391"
><td id="2391"><a href="#2391">2391</a></td></tr
><tr id="gr_svn7768_2392"
><td id="2392"><a href="#2392">2392</a></td></tr
><tr id="gr_svn7768_2393"
><td id="2393"><a href="#2393">2393</a></td></tr
><tr id="gr_svn7768_2394"
><td id="2394"><a href="#2394">2394</a></td></tr
><tr id="gr_svn7768_2395"
><td id="2395"><a href="#2395">2395</a></td></tr
><tr id="gr_svn7768_2396"
><td id="2396"><a href="#2396">2396</a></td></tr
><tr id="gr_svn7768_2397"
><td id="2397"><a href="#2397">2397</a></td></tr
><tr id="gr_svn7768_2398"
><td id="2398"><a href="#2398">2398</a></td></tr
><tr id="gr_svn7768_2399"
><td id="2399"><a href="#2399">2399</a></td></tr
><tr id="gr_svn7768_2400"
><td id="2400"><a href="#2400">2400</a></td></tr
><tr id="gr_svn7768_2401"
><td id="2401"><a href="#2401">2401</a></td></tr
><tr id="gr_svn7768_2402"
><td id="2402"><a href="#2402">2402</a></td></tr
><tr id="gr_svn7768_2403"
><td id="2403"><a href="#2403">2403</a></td></tr
><tr id="gr_svn7768_2404"
><td id="2404"><a href="#2404">2404</a></td></tr
><tr id="gr_svn7768_2405"
><td id="2405"><a href="#2405">2405</a></td></tr
><tr id="gr_svn7768_2406"
><td id="2406"><a href="#2406">2406</a></td></tr
><tr id="gr_svn7768_2407"
><td id="2407"><a href="#2407">2407</a></td></tr
><tr id="gr_svn7768_2408"
><td id="2408"><a href="#2408">2408</a></td></tr
><tr id="gr_svn7768_2409"
><td id="2409"><a href="#2409">2409</a></td></tr
><tr id="gr_svn7768_2410"
><td id="2410"><a href="#2410">2410</a></td></tr
><tr id="gr_svn7768_2411"
><td id="2411"><a href="#2411">2411</a></td></tr
><tr id="gr_svn7768_2412"
><td id="2412"><a href="#2412">2412</a></td></tr
><tr id="gr_svn7768_2413"
><td id="2413"><a href="#2413">2413</a></td></tr
><tr id="gr_svn7768_2414"
><td id="2414"><a href="#2414">2414</a></td></tr
><tr id="gr_svn7768_2415"
><td id="2415"><a href="#2415">2415</a></td></tr
><tr id="gr_svn7768_2416"
><td id="2416"><a href="#2416">2416</a></td></tr
><tr id="gr_svn7768_2417"
><td id="2417"><a href="#2417">2417</a></td></tr
><tr id="gr_svn7768_2418"
><td id="2418"><a href="#2418">2418</a></td></tr
><tr id="gr_svn7768_2419"
><td id="2419"><a href="#2419">2419</a></td></tr
><tr id="gr_svn7768_2420"
><td id="2420"><a href="#2420">2420</a></td></tr
><tr id="gr_svn7768_2421"
><td id="2421"><a href="#2421">2421</a></td></tr
><tr id="gr_svn7768_2422"
><td id="2422"><a href="#2422">2422</a></td></tr
><tr id="gr_svn7768_2423"
><td id="2423"><a href="#2423">2423</a></td></tr
><tr id="gr_svn7768_2424"
><td id="2424"><a href="#2424">2424</a></td></tr
><tr id="gr_svn7768_2425"
><td id="2425"><a href="#2425">2425</a></td></tr
><tr id="gr_svn7768_2426"
><td id="2426"><a href="#2426">2426</a></td></tr
><tr id="gr_svn7768_2427"
><td id="2427"><a href="#2427">2427</a></td></tr
><tr id="gr_svn7768_2428"
><td id="2428"><a href="#2428">2428</a></td></tr
><tr id="gr_svn7768_2429"
><td id="2429"><a href="#2429">2429</a></td></tr
><tr id="gr_svn7768_2430"
><td id="2430"><a href="#2430">2430</a></td></tr
><tr id="gr_svn7768_2431"
><td id="2431"><a href="#2431">2431</a></td></tr
><tr id="gr_svn7768_2432"
><td id="2432"><a href="#2432">2432</a></td></tr
><tr id="gr_svn7768_2433"
><td id="2433"><a href="#2433">2433</a></td></tr
><tr id="gr_svn7768_2434"
><td id="2434"><a href="#2434">2434</a></td></tr
><tr id="gr_svn7768_2435"
><td id="2435"><a href="#2435">2435</a></td></tr
><tr id="gr_svn7768_2436"
><td id="2436"><a href="#2436">2436</a></td></tr
><tr id="gr_svn7768_2437"
><td id="2437"><a href="#2437">2437</a></td></tr
><tr id="gr_svn7768_2438"
><td id="2438"><a href="#2438">2438</a></td></tr
><tr id="gr_svn7768_2439"
><td id="2439"><a href="#2439">2439</a></td></tr
><tr id="gr_svn7768_2440"
><td id="2440"><a href="#2440">2440</a></td></tr
><tr id="gr_svn7768_2441"
><td id="2441"><a href="#2441">2441</a></td></tr
><tr id="gr_svn7768_2442"
><td id="2442"><a href="#2442">2442</a></td></tr
><tr id="gr_svn7768_2443"
><td id="2443"><a href="#2443">2443</a></td></tr
><tr id="gr_svn7768_2444"
><td id="2444"><a href="#2444">2444</a></td></tr
><tr id="gr_svn7768_2445"
><td id="2445"><a href="#2445">2445</a></td></tr
><tr id="gr_svn7768_2446"
><td id="2446"><a href="#2446">2446</a></td></tr
><tr id="gr_svn7768_2447"
><td id="2447"><a href="#2447">2447</a></td></tr
><tr id="gr_svn7768_2448"
><td id="2448"><a href="#2448">2448</a></td></tr
><tr id="gr_svn7768_2449"
><td id="2449"><a href="#2449">2449</a></td></tr
><tr id="gr_svn7768_2450"
><td id="2450"><a href="#2450">2450</a></td></tr
><tr id="gr_svn7768_2451"
><td id="2451"><a href="#2451">2451</a></td></tr
><tr id="gr_svn7768_2452"
><td id="2452"><a href="#2452">2452</a></td></tr
><tr id="gr_svn7768_2453"
><td id="2453"><a href="#2453">2453</a></td></tr
><tr id="gr_svn7768_2454"
><td id="2454"><a href="#2454">2454</a></td></tr
><tr id="gr_svn7768_2455"
><td id="2455"><a href="#2455">2455</a></td></tr
><tr id="gr_svn7768_2456"
><td id="2456"><a href="#2456">2456</a></td></tr
><tr id="gr_svn7768_2457"
><td id="2457"><a href="#2457">2457</a></td></tr
><tr id="gr_svn7768_2458"
><td id="2458"><a href="#2458">2458</a></td></tr
><tr id="gr_svn7768_2459"
><td id="2459"><a href="#2459">2459</a></td></tr
><tr id="gr_svn7768_2460"
><td id="2460"><a href="#2460">2460</a></td></tr
><tr id="gr_svn7768_2461"
><td id="2461"><a href="#2461">2461</a></td></tr
><tr id="gr_svn7768_2462"
><td id="2462"><a href="#2462">2462</a></td></tr
><tr id="gr_svn7768_2463"
><td id="2463"><a href="#2463">2463</a></td></tr
><tr id="gr_svn7768_2464"
><td id="2464"><a href="#2464">2464</a></td></tr
><tr id="gr_svn7768_2465"
><td id="2465"><a href="#2465">2465</a></td></tr
><tr id="gr_svn7768_2466"
><td id="2466"><a href="#2466">2466</a></td></tr
><tr id="gr_svn7768_2467"
><td id="2467"><a href="#2467">2467</a></td></tr
><tr id="gr_svn7768_2468"
><td id="2468"><a href="#2468">2468</a></td></tr
><tr id="gr_svn7768_2469"
><td id="2469"><a href="#2469">2469</a></td></tr
><tr id="gr_svn7768_2470"
><td id="2470"><a href="#2470">2470</a></td></tr
><tr id="gr_svn7768_2471"
><td id="2471"><a href="#2471">2471</a></td></tr
><tr id="gr_svn7768_2472"
><td id="2472"><a href="#2472">2472</a></td></tr
><tr id="gr_svn7768_2473"
><td id="2473"><a href="#2473">2473</a></td></tr
><tr id="gr_svn7768_2474"
><td id="2474"><a href="#2474">2474</a></td></tr
><tr id="gr_svn7768_2475"
><td id="2475"><a href="#2475">2475</a></td></tr
><tr id="gr_svn7768_2476"
><td id="2476"><a href="#2476">2476</a></td></tr
><tr id="gr_svn7768_2477"
><td id="2477"><a href="#2477">2477</a></td></tr
><tr id="gr_svn7768_2478"
><td id="2478"><a href="#2478">2478</a></td></tr
><tr id="gr_svn7768_2479"
><td id="2479"><a href="#2479">2479</a></td></tr
><tr id="gr_svn7768_2480"
><td id="2480"><a href="#2480">2480</a></td></tr
><tr id="gr_svn7768_2481"
><td id="2481"><a href="#2481">2481</a></td></tr
><tr id="gr_svn7768_2482"
><td id="2482"><a href="#2482">2482</a></td></tr
><tr id="gr_svn7768_2483"
><td id="2483"><a href="#2483">2483</a></td></tr
><tr id="gr_svn7768_2484"
><td id="2484"><a href="#2484">2484</a></td></tr
><tr id="gr_svn7768_2485"
><td id="2485"><a href="#2485">2485</a></td></tr
><tr id="gr_svn7768_2486"
><td id="2486"><a href="#2486">2486</a></td></tr
><tr id="gr_svn7768_2487"
><td id="2487"><a href="#2487">2487</a></td></tr
><tr id="gr_svn7768_2488"
><td id="2488"><a href="#2488">2488</a></td></tr
><tr id="gr_svn7768_2489"
><td id="2489"><a href="#2489">2489</a></td></tr
><tr id="gr_svn7768_2490"
><td id="2490"><a href="#2490">2490</a></td></tr
><tr id="gr_svn7768_2491"
><td id="2491"><a href="#2491">2491</a></td></tr
><tr id="gr_svn7768_2492"
><td id="2492"><a href="#2492">2492</a></td></tr
><tr id="gr_svn7768_2493"
><td id="2493"><a href="#2493">2493</a></td></tr
><tr id="gr_svn7768_2494"
><td id="2494"><a href="#2494">2494</a></td></tr
><tr id="gr_svn7768_2495"
><td id="2495"><a href="#2495">2495</a></td></tr
><tr id="gr_svn7768_2496"
><td id="2496"><a href="#2496">2496</a></td></tr
><tr id="gr_svn7768_2497"
><td id="2497"><a href="#2497">2497</a></td></tr
><tr id="gr_svn7768_2498"
><td id="2498"><a href="#2498">2498</a></td></tr
><tr id="gr_svn7768_2499"
><td id="2499"><a href="#2499">2499</a></td></tr
><tr id="gr_svn7768_2500"
><td id="2500"><a href="#2500">2500</a></td></tr
><tr id="gr_svn7768_2501"
><td id="2501"><a href="#2501">2501</a></td></tr
><tr id="gr_svn7768_2502"
><td id="2502"><a href="#2502">2502</a></td></tr
><tr id="gr_svn7768_2503"
><td id="2503"><a href="#2503">2503</a></td></tr
><tr id="gr_svn7768_2504"
><td id="2504"><a href="#2504">2504</a></td></tr
><tr id="gr_svn7768_2505"
><td id="2505"><a href="#2505">2505</a></td></tr
><tr id="gr_svn7768_2506"
><td id="2506"><a href="#2506">2506</a></td></tr
><tr id="gr_svn7768_2507"
><td id="2507"><a href="#2507">2507</a></td></tr
><tr id="gr_svn7768_2508"
><td id="2508"><a href="#2508">2508</a></td></tr
><tr id="gr_svn7768_2509"
><td id="2509"><a href="#2509">2509</a></td></tr
><tr id="gr_svn7768_2510"
><td id="2510"><a href="#2510">2510</a></td></tr
><tr id="gr_svn7768_2511"
><td id="2511"><a href="#2511">2511</a></td></tr
><tr id="gr_svn7768_2512"
><td id="2512"><a href="#2512">2512</a></td></tr
><tr id="gr_svn7768_2513"
><td id="2513"><a href="#2513">2513</a></td></tr
><tr id="gr_svn7768_2514"
><td id="2514"><a href="#2514">2514</a></td></tr
><tr id="gr_svn7768_2515"
><td id="2515"><a href="#2515">2515</a></td></tr
><tr id="gr_svn7768_2516"
><td id="2516"><a href="#2516">2516</a></td></tr
><tr id="gr_svn7768_2517"
><td id="2517"><a href="#2517">2517</a></td></tr
><tr id="gr_svn7768_2518"
><td id="2518"><a href="#2518">2518</a></td></tr
><tr id="gr_svn7768_2519"
><td id="2519"><a href="#2519">2519</a></td></tr
><tr id="gr_svn7768_2520"
><td id="2520"><a href="#2520">2520</a></td></tr
><tr id="gr_svn7768_2521"
><td id="2521"><a href="#2521">2521</a></td></tr
><tr id="gr_svn7768_2522"
><td id="2522"><a href="#2522">2522</a></td></tr
><tr id="gr_svn7768_2523"
><td id="2523"><a href="#2523">2523</a></td></tr
><tr id="gr_svn7768_2524"
><td id="2524"><a href="#2524">2524</a></td></tr
><tr id="gr_svn7768_2525"
><td id="2525"><a href="#2525">2525</a></td></tr
><tr id="gr_svn7768_2526"
><td id="2526"><a href="#2526">2526</a></td></tr
><tr id="gr_svn7768_2527"
><td id="2527"><a href="#2527">2527</a></td></tr
><tr id="gr_svn7768_2528"
><td id="2528"><a href="#2528">2528</a></td></tr
><tr id="gr_svn7768_2529"
><td id="2529"><a href="#2529">2529</a></td></tr
><tr id="gr_svn7768_2530"
><td id="2530"><a href="#2530">2530</a></td></tr
><tr id="gr_svn7768_2531"
><td id="2531"><a href="#2531">2531</a></td></tr
><tr id="gr_svn7768_2532"
><td id="2532"><a href="#2532">2532</a></td></tr
><tr id="gr_svn7768_2533"
><td id="2533"><a href="#2533">2533</a></td></tr
><tr id="gr_svn7768_2534"
><td id="2534"><a href="#2534">2534</a></td></tr
><tr id="gr_svn7768_2535"
><td id="2535"><a href="#2535">2535</a></td></tr
><tr id="gr_svn7768_2536"
><td id="2536"><a href="#2536">2536</a></td></tr
><tr id="gr_svn7768_2537"
><td id="2537"><a href="#2537">2537</a></td></tr
><tr id="gr_svn7768_2538"
><td id="2538"><a href="#2538">2538</a></td></tr
><tr id="gr_svn7768_2539"
><td id="2539"><a href="#2539">2539</a></td></tr
><tr id="gr_svn7768_2540"
><td id="2540"><a href="#2540">2540</a></td></tr
><tr id="gr_svn7768_2541"
><td id="2541"><a href="#2541">2541</a></td></tr
><tr id="gr_svn7768_2542"
><td id="2542"><a href="#2542">2542</a></td></tr
><tr id="gr_svn7768_2543"
><td id="2543"><a href="#2543">2543</a></td></tr
><tr id="gr_svn7768_2544"
><td id="2544"><a href="#2544">2544</a></td></tr
><tr id="gr_svn7768_2545"
><td id="2545"><a href="#2545">2545</a></td></tr
><tr id="gr_svn7768_2546"
><td id="2546"><a href="#2546">2546</a></td></tr
><tr id="gr_svn7768_2547"
><td id="2547"><a href="#2547">2547</a></td></tr
><tr id="gr_svn7768_2548"
><td id="2548"><a href="#2548">2548</a></td></tr
><tr id="gr_svn7768_2549"
><td id="2549"><a href="#2549">2549</a></td></tr
><tr id="gr_svn7768_2550"
><td id="2550"><a href="#2550">2550</a></td></tr
><tr id="gr_svn7768_2551"
><td id="2551"><a href="#2551">2551</a></td></tr
><tr id="gr_svn7768_2552"
><td id="2552"><a href="#2552">2552</a></td></tr
><tr id="gr_svn7768_2553"
><td id="2553"><a href="#2553">2553</a></td></tr
><tr id="gr_svn7768_2554"
><td id="2554"><a href="#2554">2554</a></td></tr
><tr id="gr_svn7768_2555"
><td id="2555"><a href="#2555">2555</a></td></tr
><tr id="gr_svn7768_2556"
><td id="2556"><a href="#2556">2556</a></td></tr
><tr id="gr_svn7768_2557"
><td id="2557"><a href="#2557">2557</a></td></tr
><tr id="gr_svn7768_2558"
><td id="2558"><a href="#2558">2558</a></td></tr
><tr id="gr_svn7768_2559"
><td id="2559"><a href="#2559">2559</a></td></tr
><tr id="gr_svn7768_2560"
><td id="2560"><a href="#2560">2560</a></td></tr
><tr id="gr_svn7768_2561"
><td id="2561"><a href="#2561">2561</a></td></tr
><tr id="gr_svn7768_2562"
><td id="2562"><a href="#2562">2562</a></td></tr
><tr id="gr_svn7768_2563"
><td id="2563"><a href="#2563">2563</a></td></tr
><tr id="gr_svn7768_2564"
><td id="2564"><a href="#2564">2564</a></td></tr
><tr id="gr_svn7768_2565"
><td id="2565"><a href="#2565">2565</a></td></tr
><tr id="gr_svn7768_2566"
><td id="2566"><a href="#2566">2566</a></td></tr
><tr id="gr_svn7768_2567"
><td id="2567"><a href="#2567">2567</a></td></tr
><tr id="gr_svn7768_2568"
><td id="2568"><a href="#2568">2568</a></td></tr
><tr id="gr_svn7768_2569"
><td id="2569"><a href="#2569">2569</a></td></tr
><tr id="gr_svn7768_2570"
><td id="2570"><a href="#2570">2570</a></td></tr
><tr id="gr_svn7768_2571"
><td id="2571"><a href="#2571">2571</a></td></tr
><tr id="gr_svn7768_2572"
><td id="2572"><a href="#2572">2572</a></td></tr
><tr id="gr_svn7768_2573"
><td id="2573"><a href="#2573">2573</a></td></tr
><tr id="gr_svn7768_2574"
><td id="2574"><a href="#2574">2574</a></td></tr
><tr id="gr_svn7768_2575"
><td id="2575"><a href="#2575">2575</a></td></tr
><tr id="gr_svn7768_2576"
><td id="2576"><a href="#2576">2576</a></td></tr
><tr id="gr_svn7768_2577"
><td id="2577"><a href="#2577">2577</a></td></tr
><tr id="gr_svn7768_2578"
><td id="2578"><a href="#2578">2578</a></td></tr
><tr id="gr_svn7768_2579"
><td id="2579"><a href="#2579">2579</a></td></tr
><tr id="gr_svn7768_2580"
><td id="2580"><a href="#2580">2580</a></td></tr
><tr id="gr_svn7768_2581"
><td id="2581"><a href="#2581">2581</a></td></tr
><tr id="gr_svn7768_2582"
><td id="2582"><a href="#2582">2582</a></td></tr
><tr id="gr_svn7768_2583"
><td id="2583"><a href="#2583">2583</a></td></tr
><tr id="gr_svn7768_2584"
><td id="2584"><a href="#2584">2584</a></td></tr
><tr id="gr_svn7768_2585"
><td id="2585"><a href="#2585">2585</a></td></tr
><tr id="gr_svn7768_2586"
><td id="2586"><a href="#2586">2586</a></td></tr
><tr id="gr_svn7768_2587"
><td id="2587"><a href="#2587">2587</a></td></tr
><tr id="gr_svn7768_2588"
><td id="2588"><a href="#2588">2588</a></td></tr
><tr id="gr_svn7768_2589"
><td id="2589"><a href="#2589">2589</a></td></tr
><tr id="gr_svn7768_2590"
><td id="2590"><a href="#2590">2590</a></td></tr
><tr id="gr_svn7768_2591"
><td id="2591"><a href="#2591">2591</a></td></tr
><tr id="gr_svn7768_2592"
><td id="2592"><a href="#2592">2592</a></td></tr
><tr id="gr_svn7768_2593"
><td id="2593"><a href="#2593">2593</a></td></tr
><tr id="gr_svn7768_2594"
><td id="2594"><a href="#2594">2594</a></td></tr
><tr id="gr_svn7768_2595"
><td id="2595"><a href="#2595">2595</a></td></tr
><tr id="gr_svn7768_2596"
><td id="2596"><a href="#2596">2596</a></td></tr
><tr id="gr_svn7768_2597"
><td id="2597"><a href="#2597">2597</a></td></tr
><tr id="gr_svn7768_2598"
><td id="2598"><a href="#2598">2598</a></td></tr
><tr id="gr_svn7768_2599"
><td id="2599"><a href="#2599">2599</a></td></tr
><tr id="gr_svn7768_2600"
><td id="2600"><a href="#2600">2600</a></td></tr
><tr id="gr_svn7768_2601"
><td id="2601"><a href="#2601">2601</a></td></tr
><tr id="gr_svn7768_2602"
><td id="2602"><a href="#2602">2602</a></td></tr
><tr id="gr_svn7768_2603"
><td id="2603"><a href="#2603">2603</a></td></tr
><tr id="gr_svn7768_2604"
><td id="2604"><a href="#2604">2604</a></td></tr
><tr id="gr_svn7768_2605"
><td id="2605"><a href="#2605">2605</a></td></tr
><tr id="gr_svn7768_2606"
><td id="2606"><a href="#2606">2606</a></td></tr
><tr id="gr_svn7768_2607"
><td id="2607"><a href="#2607">2607</a></td></tr
><tr id="gr_svn7768_2608"
><td id="2608"><a href="#2608">2608</a></td></tr
><tr id="gr_svn7768_2609"
><td id="2609"><a href="#2609">2609</a></td></tr
><tr id="gr_svn7768_2610"
><td id="2610"><a href="#2610">2610</a></td></tr
><tr id="gr_svn7768_2611"
><td id="2611"><a href="#2611">2611</a></td></tr
><tr id="gr_svn7768_2612"
><td id="2612"><a href="#2612">2612</a></td></tr
><tr id="gr_svn7768_2613"
><td id="2613"><a href="#2613">2613</a></td></tr
><tr id="gr_svn7768_2614"
><td id="2614"><a href="#2614">2614</a></td></tr
><tr id="gr_svn7768_2615"
><td id="2615"><a href="#2615">2615</a></td></tr
><tr id="gr_svn7768_2616"
><td id="2616"><a href="#2616">2616</a></td></tr
><tr id="gr_svn7768_2617"
><td id="2617"><a href="#2617">2617</a></td></tr
><tr id="gr_svn7768_2618"
><td id="2618"><a href="#2618">2618</a></td></tr
><tr id="gr_svn7768_2619"
><td id="2619"><a href="#2619">2619</a></td></tr
><tr id="gr_svn7768_2620"
><td id="2620"><a href="#2620">2620</a></td></tr
><tr id="gr_svn7768_2621"
><td id="2621"><a href="#2621">2621</a></td></tr
><tr id="gr_svn7768_2622"
><td id="2622"><a href="#2622">2622</a></td></tr
><tr id="gr_svn7768_2623"
><td id="2623"><a href="#2623">2623</a></td></tr
><tr id="gr_svn7768_2624"
><td id="2624"><a href="#2624">2624</a></td></tr
><tr id="gr_svn7768_2625"
><td id="2625"><a href="#2625">2625</a></td></tr
><tr id="gr_svn7768_2626"
><td id="2626"><a href="#2626">2626</a></td></tr
><tr id="gr_svn7768_2627"
><td id="2627"><a href="#2627">2627</a></td></tr
><tr id="gr_svn7768_2628"
><td id="2628"><a href="#2628">2628</a></td></tr
><tr id="gr_svn7768_2629"
><td id="2629"><a href="#2629">2629</a></td></tr
><tr id="gr_svn7768_2630"
><td id="2630"><a href="#2630">2630</a></td></tr
><tr id="gr_svn7768_2631"
><td id="2631"><a href="#2631">2631</a></td></tr
><tr id="gr_svn7768_2632"
><td id="2632"><a href="#2632">2632</a></td></tr
><tr id="gr_svn7768_2633"
><td id="2633"><a href="#2633">2633</a></td></tr
><tr id="gr_svn7768_2634"
><td id="2634"><a href="#2634">2634</a></td></tr
><tr id="gr_svn7768_2635"
><td id="2635"><a href="#2635">2635</a></td></tr
><tr id="gr_svn7768_2636"
><td id="2636"><a href="#2636">2636</a></td></tr
><tr id="gr_svn7768_2637"
><td id="2637"><a href="#2637">2637</a></td></tr
><tr id="gr_svn7768_2638"
><td id="2638"><a href="#2638">2638</a></td></tr
><tr id="gr_svn7768_2639"
><td id="2639"><a href="#2639">2639</a></td></tr
><tr id="gr_svn7768_2640"
><td id="2640"><a href="#2640">2640</a></td></tr
><tr id="gr_svn7768_2641"
><td id="2641"><a href="#2641">2641</a></td></tr
><tr id="gr_svn7768_2642"
><td id="2642"><a href="#2642">2642</a></td></tr
><tr id="gr_svn7768_2643"
><td id="2643"><a href="#2643">2643</a></td></tr
><tr id="gr_svn7768_2644"
><td id="2644"><a href="#2644">2644</a></td></tr
><tr id="gr_svn7768_2645"
><td id="2645"><a href="#2645">2645</a></td></tr
><tr id="gr_svn7768_2646"
><td id="2646"><a href="#2646">2646</a></td></tr
><tr id="gr_svn7768_2647"
><td id="2647"><a href="#2647">2647</a></td></tr
><tr id="gr_svn7768_2648"
><td id="2648"><a href="#2648">2648</a></td></tr
><tr id="gr_svn7768_2649"
><td id="2649"><a href="#2649">2649</a></td></tr
><tr id="gr_svn7768_2650"
><td id="2650"><a href="#2650">2650</a></td></tr
><tr id="gr_svn7768_2651"
><td id="2651"><a href="#2651">2651</a></td></tr
><tr id="gr_svn7768_2652"
><td id="2652"><a href="#2652">2652</a></td></tr
><tr id="gr_svn7768_2653"
><td id="2653"><a href="#2653">2653</a></td></tr
><tr id="gr_svn7768_2654"
><td id="2654"><a href="#2654">2654</a></td></tr
><tr id="gr_svn7768_2655"
><td id="2655"><a href="#2655">2655</a></td></tr
><tr id="gr_svn7768_2656"
><td id="2656"><a href="#2656">2656</a></td></tr
><tr id="gr_svn7768_2657"
><td id="2657"><a href="#2657">2657</a></td></tr
><tr id="gr_svn7768_2658"
><td id="2658"><a href="#2658">2658</a></td></tr
><tr id="gr_svn7768_2659"
><td id="2659"><a href="#2659">2659</a></td></tr
><tr id="gr_svn7768_2660"
><td id="2660"><a href="#2660">2660</a></td></tr
><tr id="gr_svn7768_2661"
><td id="2661"><a href="#2661">2661</a></td></tr
><tr id="gr_svn7768_2662"
><td id="2662"><a href="#2662">2662</a></td></tr
><tr id="gr_svn7768_2663"
><td id="2663"><a href="#2663">2663</a></td></tr
><tr id="gr_svn7768_2664"
><td id="2664"><a href="#2664">2664</a></td></tr
><tr id="gr_svn7768_2665"
><td id="2665"><a href="#2665">2665</a></td></tr
><tr id="gr_svn7768_2666"
><td id="2666"><a href="#2666">2666</a></td></tr
><tr id="gr_svn7768_2667"
><td id="2667"><a href="#2667">2667</a></td></tr
><tr id="gr_svn7768_2668"
><td id="2668"><a href="#2668">2668</a></td></tr
><tr id="gr_svn7768_2669"
><td id="2669"><a href="#2669">2669</a></td></tr
><tr id="gr_svn7768_2670"
><td id="2670"><a href="#2670">2670</a></td></tr
><tr id="gr_svn7768_2671"
><td id="2671"><a href="#2671">2671</a></td></tr
><tr id="gr_svn7768_2672"
><td id="2672"><a href="#2672">2672</a></td></tr
><tr id="gr_svn7768_2673"
><td id="2673"><a href="#2673">2673</a></td></tr
><tr id="gr_svn7768_2674"
><td id="2674"><a href="#2674">2674</a></td></tr
><tr id="gr_svn7768_2675"
><td id="2675"><a href="#2675">2675</a></td></tr
><tr id="gr_svn7768_2676"
><td id="2676"><a href="#2676">2676</a></td></tr
><tr id="gr_svn7768_2677"
><td id="2677"><a href="#2677">2677</a></td></tr
><tr id="gr_svn7768_2678"
><td id="2678"><a href="#2678">2678</a></td></tr
><tr id="gr_svn7768_2679"
><td id="2679"><a href="#2679">2679</a></td></tr
><tr id="gr_svn7768_2680"
><td id="2680"><a href="#2680">2680</a></td></tr
><tr id="gr_svn7768_2681"
><td id="2681"><a href="#2681">2681</a></td></tr
><tr id="gr_svn7768_2682"
><td id="2682"><a href="#2682">2682</a></td></tr
><tr id="gr_svn7768_2683"
><td id="2683"><a href="#2683">2683</a></td></tr
><tr id="gr_svn7768_2684"
><td id="2684"><a href="#2684">2684</a></td></tr
><tr id="gr_svn7768_2685"
><td id="2685"><a href="#2685">2685</a></td></tr
><tr id="gr_svn7768_2686"
><td id="2686"><a href="#2686">2686</a></td></tr
><tr id="gr_svn7768_2687"
><td id="2687"><a href="#2687">2687</a></td></tr
><tr id="gr_svn7768_2688"
><td id="2688"><a href="#2688">2688</a></td></tr
><tr id="gr_svn7768_2689"
><td id="2689"><a href="#2689">2689</a></td></tr
><tr id="gr_svn7768_2690"
><td id="2690"><a href="#2690">2690</a></td></tr
><tr id="gr_svn7768_2691"
><td id="2691"><a href="#2691">2691</a></td></tr
><tr id="gr_svn7768_2692"
><td id="2692"><a href="#2692">2692</a></td></tr
><tr id="gr_svn7768_2693"
><td id="2693"><a href="#2693">2693</a></td></tr
><tr id="gr_svn7768_2694"
><td id="2694"><a href="#2694">2694</a></td></tr
><tr id="gr_svn7768_2695"
><td id="2695"><a href="#2695">2695</a></td></tr
><tr id="gr_svn7768_2696"
><td id="2696"><a href="#2696">2696</a></td></tr
><tr id="gr_svn7768_2697"
><td id="2697"><a href="#2697">2697</a></td></tr
><tr id="gr_svn7768_2698"
><td id="2698"><a href="#2698">2698</a></td></tr
><tr id="gr_svn7768_2699"
><td id="2699"><a href="#2699">2699</a></td></tr
><tr id="gr_svn7768_2700"
><td id="2700"><a href="#2700">2700</a></td></tr
><tr id="gr_svn7768_2701"
><td id="2701"><a href="#2701">2701</a></td></tr
><tr id="gr_svn7768_2702"
><td id="2702"><a href="#2702">2702</a></td></tr
><tr id="gr_svn7768_2703"
><td id="2703"><a href="#2703">2703</a></td></tr
><tr id="gr_svn7768_2704"
><td id="2704"><a href="#2704">2704</a></td></tr
><tr id="gr_svn7768_2705"
><td id="2705"><a href="#2705">2705</a></td></tr
><tr id="gr_svn7768_2706"
><td id="2706"><a href="#2706">2706</a></td></tr
><tr id="gr_svn7768_2707"
><td id="2707"><a href="#2707">2707</a></td></tr
><tr id="gr_svn7768_2708"
><td id="2708"><a href="#2708">2708</a></td></tr
><tr id="gr_svn7768_2709"
><td id="2709"><a href="#2709">2709</a></td></tr
><tr id="gr_svn7768_2710"
><td id="2710"><a href="#2710">2710</a></td></tr
><tr id="gr_svn7768_2711"
><td id="2711"><a href="#2711">2711</a></td></tr
><tr id="gr_svn7768_2712"
><td id="2712"><a href="#2712">2712</a></td></tr
><tr id="gr_svn7768_2713"
><td id="2713"><a href="#2713">2713</a></td></tr
><tr id="gr_svn7768_2714"
><td id="2714"><a href="#2714">2714</a></td></tr
><tr id="gr_svn7768_2715"
><td id="2715"><a href="#2715">2715</a></td></tr
><tr id="gr_svn7768_2716"
><td id="2716"><a href="#2716">2716</a></td></tr
><tr id="gr_svn7768_2717"
><td id="2717"><a href="#2717">2717</a></td></tr
><tr id="gr_svn7768_2718"
><td id="2718"><a href="#2718">2718</a></td></tr
><tr id="gr_svn7768_2719"
><td id="2719"><a href="#2719">2719</a></td></tr
><tr id="gr_svn7768_2720"
><td id="2720"><a href="#2720">2720</a></td></tr
><tr id="gr_svn7768_2721"
><td id="2721"><a href="#2721">2721</a></td></tr
><tr id="gr_svn7768_2722"
><td id="2722"><a href="#2722">2722</a></td></tr
><tr id="gr_svn7768_2723"
><td id="2723"><a href="#2723">2723</a></td></tr
><tr id="gr_svn7768_2724"
><td id="2724"><a href="#2724">2724</a></td></tr
><tr id="gr_svn7768_2725"
><td id="2725"><a href="#2725">2725</a></td></tr
><tr id="gr_svn7768_2726"
><td id="2726"><a href="#2726">2726</a></td></tr
><tr id="gr_svn7768_2727"
><td id="2727"><a href="#2727">2727</a></td></tr
><tr id="gr_svn7768_2728"
><td id="2728"><a href="#2728">2728</a></td></tr
><tr id="gr_svn7768_2729"
><td id="2729"><a href="#2729">2729</a></td></tr
><tr id="gr_svn7768_2730"
><td id="2730"><a href="#2730">2730</a></td></tr
><tr id="gr_svn7768_2731"
><td id="2731"><a href="#2731">2731</a></td></tr
><tr id="gr_svn7768_2732"
><td id="2732"><a href="#2732">2732</a></td></tr
><tr id="gr_svn7768_2733"
><td id="2733"><a href="#2733">2733</a></td></tr
><tr id="gr_svn7768_2734"
><td id="2734"><a href="#2734">2734</a></td></tr
><tr id="gr_svn7768_2735"
><td id="2735"><a href="#2735">2735</a></td></tr
><tr id="gr_svn7768_2736"
><td id="2736"><a href="#2736">2736</a></td></tr
><tr id="gr_svn7768_2737"
><td id="2737"><a href="#2737">2737</a></td></tr
><tr id="gr_svn7768_2738"
><td id="2738"><a href="#2738">2738</a></td></tr
><tr id="gr_svn7768_2739"
><td id="2739"><a href="#2739">2739</a></td></tr
><tr id="gr_svn7768_2740"
><td id="2740"><a href="#2740">2740</a></td></tr
><tr id="gr_svn7768_2741"
><td id="2741"><a href="#2741">2741</a></td></tr
><tr id="gr_svn7768_2742"
><td id="2742"><a href="#2742">2742</a></td></tr
><tr id="gr_svn7768_2743"
><td id="2743"><a href="#2743">2743</a></td></tr
><tr id="gr_svn7768_2744"
><td id="2744"><a href="#2744">2744</a></td></tr
><tr id="gr_svn7768_2745"
><td id="2745"><a href="#2745">2745</a></td></tr
><tr id="gr_svn7768_2746"
><td id="2746"><a href="#2746">2746</a></td></tr
><tr id="gr_svn7768_2747"
><td id="2747"><a href="#2747">2747</a></td></tr
><tr id="gr_svn7768_2748"
><td id="2748"><a href="#2748">2748</a></td></tr
><tr id="gr_svn7768_2749"
><td id="2749"><a href="#2749">2749</a></td></tr
><tr id="gr_svn7768_2750"
><td id="2750"><a href="#2750">2750</a></td></tr
><tr id="gr_svn7768_2751"
><td id="2751"><a href="#2751">2751</a></td></tr
><tr id="gr_svn7768_2752"
><td id="2752"><a href="#2752">2752</a></td></tr
><tr id="gr_svn7768_2753"
><td id="2753"><a href="#2753">2753</a></td></tr
><tr id="gr_svn7768_2754"
><td id="2754"><a href="#2754">2754</a></td></tr
><tr id="gr_svn7768_2755"
><td id="2755"><a href="#2755">2755</a></td></tr
><tr id="gr_svn7768_2756"
><td id="2756"><a href="#2756">2756</a></td></tr
><tr id="gr_svn7768_2757"
><td id="2757"><a href="#2757">2757</a></td></tr
><tr id="gr_svn7768_2758"
><td id="2758"><a href="#2758">2758</a></td></tr
><tr id="gr_svn7768_2759"
><td id="2759"><a href="#2759">2759</a></td></tr
><tr id="gr_svn7768_2760"
><td id="2760"><a href="#2760">2760</a></td></tr
><tr id="gr_svn7768_2761"
><td id="2761"><a href="#2761">2761</a></td></tr
><tr id="gr_svn7768_2762"
><td id="2762"><a href="#2762">2762</a></td></tr
><tr id="gr_svn7768_2763"
><td id="2763"><a href="#2763">2763</a></td></tr
><tr id="gr_svn7768_2764"
><td id="2764"><a href="#2764">2764</a></td></tr
><tr id="gr_svn7768_2765"
><td id="2765"><a href="#2765">2765</a></td></tr
><tr id="gr_svn7768_2766"
><td id="2766"><a href="#2766">2766</a></td></tr
><tr id="gr_svn7768_2767"
><td id="2767"><a href="#2767">2767</a></td></tr
><tr id="gr_svn7768_2768"
><td id="2768"><a href="#2768">2768</a></td></tr
><tr id="gr_svn7768_2769"
><td id="2769"><a href="#2769">2769</a></td></tr
><tr id="gr_svn7768_2770"
><td id="2770"><a href="#2770">2770</a></td></tr
><tr id="gr_svn7768_2771"
><td id="2771"><a href="#2771">2771</a></td></tr
><tr id="gr_svn7768_2772"
><td id="2772"><a href="#2772">2772</a></td></tr
><tr id="gr_svn7768_2773"
><td id="2773"><a href="#2773">2773</a></td></tr
><tr id="gr_svn7768_2774"
><td id="2774"><a href="#2774">2774</a></td></tr
><tr id="gr_svn7768_2775"
><td id="2775"><a href="#2775">2775</a></td></tr
><tr id="gr_svn7768_2776"
><td id="2776"><a href="#2776">2776</a></td></tr
><tr id="gr_svn7768_2777"
><td id="2777"><a href="#2777">2777</a></td></tr
><tr id="gr_svn7768_2778"
><td id="2778"><a href="#2778">2778</a></td></tr
><tr id="gr_svn7768_2779"
><td id="2779"><a href="#2779">2779</a></td></tr
><tr id="gr_svn7768_2780"
><td id="2780"><a href="#2780">2780</a></td></tr
><tr id="gr_svn7768_2781"
><td id="2781"><a href="#2781">2781</a></td></tr
><tr id="gr_svn7768_2782"
><td id="2782"><a href="#2782">2782</a></td></tr
><tr id="gr_svn7768_2783"
><td id="2783"><a href="#2783">2783</a></td></tr
><tr id="gr_svn7768_2784"
><td id="2784"><a href="#2784">2784</a></td></tr
><tr id="gr_svn7768_2785"
><td id="2785"><a href="#2785">2785</a></td></tr
><tr id="gr_svn7768_2786"
><td id="2786"><a href="#2786">2786</a></td></tr
><tr id="gr_svn7768_2787"
><td id="2787"><a href="#2787">2787</a></td></tr
><tr id="gr_svn7768_2788"
><td id="2788"><a href="#2788">2788</a></td></tr
><tr id="gr_svn7768_2789"
><td id="2789"><a href="#2789">2789</a></td></tr
><tr id="gr_svn7768_2790"
><td id="2790"><a href="#2790">2790</a></td></tr
><tr id="gr_svn7768_2791"
><td id="2791"><a href="#2791">2791</a></td></tr
><tr id="gr_svn7768_2792"
><td id="2792"><a href="#2792">2792</a></td></tr
><tr id="gr_svn7768_2793"
><td id="2793"><a href="#2793">2793</a></td></tr
><tr id="gr_svn7768_2794"
><td id="2794"><a href="#2794">2794</a></td></tr
><tr id="gr_svn7768_2795"
><td id="2795"><a href="#2795">2795</a></td></tr
><tr id="gr_svn7768_2796"
><td id="2796"><a href="#2796">2796</a></td></tr
><tr id="gr_svn7768_2797"
><td id="2797"><a href="#2797">2797</a></td></tr
><tr id="gr_svn7768_2798"
><td id="2798"><a href="#2798">2798</a></td></tr
><tr id="gr_svn7768_2799"
><td id="2799"><a href="#2799">2799</a></td></tr
><tr id="gr_svn7768_2800"
><td id="2800"><a href="#2800">2800</a></td></tr
><tr id="gr_svn7768_2801"
><td id="2801"><a href="#2801">2801</a></td></tr
><tr id="gr_svn7768_2802"
><td id="2802"><a href="#2802">2802</a></td></tr
><tr id="gr_svn7768_2803"
><td id="2803"><a href="#2803">2803</a></td></tr
><tr id="gr_svn7768_2804"
><td id="2804"><a href="#2804">2804</a></td></tr
><tr id="gr_svn7768_2805"
><td id="2805"><a href="#2805">2805</a></td></tr
><tr id="gr_svn7768_2806"
><td id="2806"><a href="#2806">2806</a></td></tr
><tr id="gr_svn7768_2807"
><td id="2807"><a href="#2807">2807</a></td></tr
><tr id="gr_svn7768_2808"
><td id="2808"><a href="#2808">2808</a></td></tr
><tr id="gr_svn7768_2809"
><td id="2809"><a href="#2809">2809</a></td></tr
><tr id="gr_svn7768_2810"
><td id="2810"><a href="#2810">2810</a></td></tr
><tr id="gr_svn7768_2811"
><td id="2811"><a href="#2811">2811</a></td></tr
><tr id="gr_svn7768_2812"
><td id="2812"><a href="#2812">2812</a></td></tr
><tr id="gr_svn7768_2813"
><td id="2813"><a href="#2813">2813</a></td></tr
><tr id="gr_svn7768_2814"
><td id="2814"><a href="#2814">2814</a></td></tr
><tr id="gr_svn7768_2815"
><td id="2815"><a href="#2815">2815</a></td></tr
><tr id="gr_svn7768_2816"
><td id="2816"><a href="#2816">2816</a></td></tr
><tr id="gr_svn7768_2817"
><td id="2817"><a href="#2817">2817</a></td></tr
><tr id="gr_svn7768_2818"
><td id="2818"><a href="#2818">2818</a></td></tr
><tr id="gr_svn7768_2819"
><td id="2819"><a href="#2819">2819</a></td></tr
><tr id="gr_svn7768_2820"
><td id="2820"><a href="#2820">2820</a></td></tr
><tr id="gr_svn7768_2821"
><td id="2821"><a href="#2821">2821</a></td></tr
><tr id="gr_svn7768_2822"
><td id="2822"><a href="#2822">2822</a></td></tr
><tr id="gr_svn7768_2823"
><td id="2823"><a href="#2823">2823</a></td></tr
><tr id="gr_svn7768_2824"
><td id="2824"><a href="#2824">2824</a></td></tr
><tr id="gr_svn7768_2825"
><td id="2825"><a href="#2825">2825</a></td></tr
><tr id="gr_svn7768_2826"
><td id="2826"><a href="#2826">2826</a></td></tr
><tr id="gr_svn7768_2827"
><td id="2827"><a href="#2827">2827</a></td></tr
><tr id="gr_svn7768_2828"
><td id="2828"><a href="#2828">2828</a></td></tr
><tr id="gr_svn7768_2829"
><td id="2829"><a href="#2829">2829</a></td></tr
><tr id="gr_svn7768_2830"
><td id="2830"><a href="#2830">2830</a></td></tr
><tr id="gr_svn7768_2831"
><td id="2831"><a href="#2831">2831</a></td></tr
><tr id="gr_svn7768_2832"
><td id="2832"><a href="#2832">2832</a></td></tr
><tr id="gr_svn7768_2833"
><td id="2833"><a href="#2833">2833</a></td></tr
><tr id="gr_svn7768_2834"
><td id="2834"><a href="#2834">2834</a></td></tr
><tr id="gr_svn7768_2835"
><td id="2835"><a href="#2835">2835</a></td></tr
><tr id="gr_svn7768_2836"
><td id="2836"><a href="#2836">2836</a></td></tr
><tr id="gr_svn7768_2837"
><td id="2837"><a href="#2837">2837</a></td></tr
><tr id="gr_svn7768_2838"
><td id="2838"><a href="#2838">2838</a></td></tr
><tr id="gr_svn7768_2839"
><td id="2839"><a href="#2839">2839</a></td></tr
><tr id="gr_svn7768_2840"
><td id="2840"><a href="#2840">2840</a></td></tr
><tr id="gr_svn7768_2841"
><td id="2841"><a href="#2841">2841</a></td></tr
><tr id="gr_svn7768_2842"
><td id="2842"><a href="#2842">2842</a></td></tr
><tr id="gr_svn7768_2843"
><td id="2843"><a href="#2843">2843</a></td></tr
><tr id="gr_svn7768_2844"
><td id="2844"><a href="#2844">2844</a></td></tr
><tr id="gr_svn7768_2845"
><td id="2845"><a href="#2845">2845</a></td></tr
><tr id="gr_svn7768_2846"
><td id="2846"><a href="#2846">2846</a></td></tr
><tr id="gr_svn7768_2847"
><td id="2847"><a href="#2847">2847</a></td></tr
><tr id="gr_svn7768_2848"
><td id="2848"><a href="#2848">2848</a></td></tr
><tr id="gr_svn7768_2849"
><td id="2849"><a href="#2849">2849</a></td></tr
><tr id="gr_svn7768_2850"
><td id="2850"><a href="#2850">2850</a></td></tr
><tr id="gr_svn7768_2851"
><td id="2851"><a href="#2851">2851</a></td></tr
><tr id="gr_svn7768_2852"
><td id="2852"><a href="#2852">2852</a></td></tr
><tr id="gr_svn7768_2853"
><td id="2853"><a href="#2853">2853</a></td></tr
><tr id="gr_svn7768_2854"
><td id="2854"><a href="#2854">2854</a></td></tr
><tr id="gr_svn7768_2855"
><td id="2855"><a href="#2855">2855</a></td></tr
><tr id="gr_svn7768_2856"
><td id="2856"><a href="#2856">2856</a></td></tr
><tr id="gr_svn7768_2857"
><td id="2857"><a href="#2857">2857</a></td></tr
><tr id="gr_svn7768_2858"
><td id="2858"><a href="#2858">2858</a></td></tr
><tr id="gr_svn7768_2859"
><td id="2859"><a href="#2859">2859</a></td></tr
><tr id="gr_svn7768_2860"
><td id="2860"><a href="#2860">2860</a></td></tr
><tr id="gr_svn7768_2861"
><td id="2861"><a href="#2861">2861</a></td></tr
><tr id="gr_svn7768_2862"
><td id="2862"><a href="#2862">2862</a></td></tr
><tr id="gr_svn7768_2863"
><td id="2863"><a href="#2863">2863</a></td></tr
><tr id="gr_svn7768_2864"
><td id="2864"><a href="#2864">2864</a></td></tr
><tr id="gr_svn7768_2865"
><td id="2865"><a href="#2865">2865</a></td></tr
><tr id="gr_svn7768_2866"
><td id="2866"><a href="#2866">2866</a></td></tr
><tr id="gr_svn7768_2867"
><td id="2867"><a href="#2867">2867</a></td></tr
><tr id="gr_svn7768_2868"
><td id="2868"><a href="#2868">2868</a></td></tr
><tr id="gr_svn7768_2869"
><td id="2869"><a href="#2869">2869</a></td></tr
><tr id="gr_svn7768_2870"
><td id="2870"><a href="#2870">2870</a></td></tr
><tr id="gr_svn7768_2871"
><td id="2871"><a href="#2871">2871</a></td></tr
><tr id="gr_svn7768_2872"
><td id="2872"><a href="#2872">2872</a></td></tr
><tr id="gr_svn7768_2873"
><td id="2873"><a href="#2873">2873</a></td></tr
><tr id="gr_svn7768_2874"
><td id="2874"><a href="#2874">2874</a></td></tr
><tr id="gr_svn7768_2875"
><td id="2875"><a href="#2875">2875</a></td></tr
><tr id="gr_svn7768_2876"
><td id="2876"><a href="#2876">2876</a></td></tr
><tr id="gr_svn7768_2877"
><td id="2877"><a href="#2877">2877</a></td></tr
><tr id="gr_svn7768_2878"
><td id="2878"><a href="#2878">2878</a></td></tr
><tr id="gr_svn7768_2879"
><td id="2879"><a href="#2879">2879</a></td></tr
><tr id="gr_svn7768_2880"
><td id="2880"><a href="#2880">2880</a></td></tr
><tr id="gr_svn7768_2881"
><td id="2881"><a href="#2881">2881</a></td></tr
><tr id="gr_svn7768_2882"
><td id="2882"><a href="#2882">2882</a></td></tr
><tr id="gr_svn7768_2883"
><td id="2883"><a href="#2883">2883</a></td></tr
><tr id="gr_svn7768_2884"
><td id="2884"><a href="#2884">2884</a></td></tr
><tr id="gr_svn7768_2885"
><td id="2885"><a href="#2885">2885</a></td></tr
><tr id="gr_svn7768_2886"
><td id="2886"><a href="#2886">2886</a></td></tr
><tr id="gr_svn7768_2887"
><td id="2887"><a href="#2887">2887</a></td></tr
><tr id="gr_svn7768_2888"
><td id="2888"><a href="#2888">2888</a></td></tr
><tr id="gr_svn7768_2889"
><td id="2889"><a href="#2889">2889</a></td></tr
><tr id="gr_svn7768_2890"
><td id="2890"><a href="#2890">2890</a></td></tr
><tr id="gr_svn7768_2891"
><td id="2891"><a href="#2891">2891</a></td></tr
><tr id="gr_svn7768_2892"
><td id="2892"><a href="#2892">2892</a></td></tr
><tr id="gr_svn7768_2893"
><td id="2893"><a href="#2893">2893</a></td></tr
><tr id="gr_svn7768_2894"
><td id="2894"><a href="#2894">2894</a></td></tr
><tr id="gr_svn7768_2895"
><td id="2895"><a href="#2895">2895</a></td></tr
><tr id="gr_svn7768_2896"
><td id="2896"><a href="#2896">2896</a></td></tr
><tr id="gr_svn7768_2897"
><td id="2897"><a href="#2897">2897</a></td></tr
><tr id="gr_svn7768_2898"
><td id="2898"><a href="#2898">2898</a></td></tr
><tr id="gr_svn7768_2899"
><td id="2899"><a href="#2899">2899</a></td></tr
><tr id="gr_svn7768_2900"
><td id="2900"><a href="#2900">2900</a></td></tr
><tr id="gr_svn7768_2901"
><td id="2901"><a href="#2901">2901</a></td></tr
><tr id="gr_svn7768_2902"
><td id="2902"><a href="#2902">2902</a></td></tr
><tr id="gr_svn7768_2903"
><td id="2903"><a href="#2903">2903</a></td></tr
><tr id="gr_svn7768_2904"
><td id="2904"><a href="#2904">2904</a></td></tr
><tr id="gr_svn7768_2905"
><td id="2905"><a href="#2905">2905</a></td></tr
><tr id="gr_svn7768_2906"
><td id="2906"><a href="#2906">2906</a></td></tr
><tr id="gr_svn7768_2907"
><td id="2907"><a href="#2907">2907</a></td></tr
><tr id="gr_svn7768_2908"
><td id="2908"><a href="#2908">2908</a></td></tr
><tr id="gr_svn7768_2909"
><td id="2909"><a href="#2909">2909</a></td></tr
><tr id="gr_svn7768_2910"
><td id="2910"><a href="#2910">2910</a></td></tr
><tr id="gr_svn7768_2911"
><td id="2911"><a href="#2911">2911</a></td></tr
><tr id="gr_svn7768_2912"
><td id="2912"><a href="#2912">2912</a></td></tr
><tr id="gr_svn7768_2913"
><td id="2913"><a href="#2913">2913</a></td></tr
><tr id="gr_svn7768_2914"
><td id="2914"><a href="#2914">2914</a></td></tr
><tr id="gr_svn7768_2915"
><td id="2915"><a href="#2915">2915</a></td></tr
><tr id="gr_svn7768_2916"
><td id="2916"><a href="#2916">2916</a></td></tr
><tr id="gr_svn7768_2917"
><td id="2917"><a href="#2917">2917</a></td></tr
><tr id="gr_svn7768_2918"
><td id="2918"><a href="#2918">2918</a></td></tr
><tr id="gr_svn7768_2919"
><td id="2919"><a href="#2919">2919</a></td></tr
><tr id="gr_svn7768_2920"
><td id="2920"><a href="#2920">2920</a></td></tr
><tr id="gr_svn7768_2921"
><td id="2921"><a href="#2921">2921</a></td></tr
><tr id="gr_svn7768_2922"
><td id="2922"><a href="#2922">2922</a></td></tr
><tr id="gr_svn7768_2923"
><td id="2923"><a href="#2923">2923</a></td></tr
><tr id="gr_svn7768_2924"
><td id="2924"><a href="#2924">2924</a></td></tr
><tr id="gr_svn7768_2925"
><td id="2925"><a href="#2925">2925</a></td></tr
><tr id="gr_svn7768_2926"
><td id="2926"><a href="#2926">2926</a></td></tr
><tr id="gr_svn7768_2927"
><td id="2927"><a href="#2927">2927</a></td></tr
><tr id="gr_svn7768_2928"
><td id="2928"><a href="#2928">2928</a></td></tr
><tr id="gr_svn7768_2929"
><td id="2929"><a href="#2929">2929</a></td></tr
><tr id="gr_svn7768_2930"
><td id="2930"><a href="#2930">2930</a></td></tr
><tr id="gr_svn7768_2931"
><td id="2931"><a href="#2931">2931</a></td></tr
><tr id="gr_svn7768_2932"
><td id="2932"><a href="#2932">2932</a></td></tr
><tr id="gr_svn7768_2933"
><td id="2933"><a href="#2933">2933</a></td></tr
><tr id="gr_svn7768_2934"
><td id="2934"><a href="#2934">2934</a></td></tr
><tr id="gr_svn7768_2935"
><td id="2935"><a href="#2935">2935</a></td></tr
><tr id="gr_svn7768_2936"
><td id="2936"><a href="#2936">2936</a></td></tr
><tr id="gr_svn7768_2937"
><td id="2937"><a href="#2937">2937</a></td></tr
><tr id="gr_svn7768_2938"
><td id="2938"><a href="#2938">2938</a></td></tr
><tr id="gr_svn7768_2939"
><td id="2939"><a href="#2939">2939</a></td></tr
><tr id="gr_svn7768_2940"
><td id="2940"><a href="#2940">2940</a></td></tr
><tr id="gr_svn7768_2941"
><td id="2941"><a href="#2941">2941</a></td></tr
><tr id="gr_svn7768_2942"
><td id="2942"><a href="#2942">2942</a></td></tr
><tr id="gr_svn7768_2943"
><td id="2943"><a href="#2943">2943</a></td></tr
><tr id="gr_svn7768_2944"
><td id="2944"><a href="#2944">2944</a></td></tr
><tr id="gr_svn7768_2945"
><td id="2945"><a href="#2945">2945</a></td></tr
><tr id="gr_svn7768_2946"
><td id="2946"><a href="#2946">2946</a></td></tr
><tr id="gr_svn7768_2947"
><td id="2947"><a href="#2947">2947</a></td></tr
><tr id="gr_svn7768_2948"
><td id="2948"><a href="#2948">2948</a></td></tr
><tr id="gr_svn7768_2949"
><td id="2949"><a href="#2949">2949</a></td></tr
><tr id="gr_svn7768_2950"
><td id="2950"><a href="#2950">2950</a></td></tr
><tr id="gr_svn7768_2951"
><td id="2951"><a href="#2951">2951</a></td></tr
><tr id="gr_svn7768_2952"
><td id="2952"><a href="#2952">2952</a></td></tr
><tr id="gr_svn7768_2953"
><td id="2953"><a href="#2953">2953</a></td></tr
><tr id="gr_svn7768_2954"
><td id="2954"><a href="#2954">2954</a></td></tr
><tr id="gr_svn7768_2955"
><td id="2955"><a href="#2955">2955</a></td></tr
><tr id="gr_svn7768_2956"
><td id="2956"><a href="#2956">2956</a></td></tr
><tr id="gr_svn7768_2957"
><td id="2957"><a href="#2957">2957</a></td></tr
><tr id="gr_svn7768_2958"
><td id="2958"><a href="#2958">2958</a></td></tr
><tr id="gr_svn7768_2959"
><td id="2959"><a href="#2959">2959</a></td></tr
><tr id="gr_svn7768_2960"
><td id="2960"><a href="#2960">2960</a></td></tr
><tr id="gr_svn7768_2961"
><td id="2961"><a href="#2961">2961</a></td></tr
><tr id="gr_svn7768_2962"
><td id="2962"><a href="#2962">2962</a></td></tr
><tr id="gr_svn7768_2963"
><td id="2963"><a href="#2963">2963</a></td></tr
><tr id="gr_svn7768_2964"
><td id="2964"><a href="#2964">2964</a></td></tr
><tr id="gr_svn7768_2965"
><td id="2965"><a href="#2965">2965</a></td></tr
><tr id="gr_svn7768_2966"
><td id="2966"><a href="#2966">2966</a></td></tr
><tr id="gr_svn7768_2967"
><td id="2967"><a href="#2967">2967</a></td></tr
><tr id="gr_svn7768_2968"
><td id="2968"><a href="#2968">2968</a></td></tr
><tr id="gr_svn7768_2969"
><td id="2969"><a href="#2969">2969</a></td></tr
><tr id="gr_svn7768_2970"
><td id="2970"><a href="#2970">2970</a></td></tr
><tr id="gr_svn7768_2971"
><td id="2971"><a href="#2971">2971</a></td></tr
><tr id="gr_svn7768_2972"
><td id="2972"><a href="#2972">2972</a></td></tr
><tr id="gr_svn7768_2973"
><td id="2973"><a href="#2973">2973</a></td></tr
><tr id="gr_svn7768_2974"
><td id="2974"><a href="#2974">2974</a></td></tr
><tr id="gr_svn7768_2975"
><td id="2975"><a href="#2975">2975</a></td></tr
><tr id="gr_svn7768_2976"
><td id="2976"><a href="#2976">2976</a></td></tr
><tr id="gr_svn7768_2977"
><td id="2977"><a href="#2977">2977</a></td></tr
><tr id="gr_svn7768_2978"
><td id="2978"><a href="#2978">2978</a></td></tr
><tr id="gr_svn7768_2979"
><td id="2979"><a href="#2979">2979</a></td></tr
><tr id="gr_svn7768_2980"
><td id="2980"><a href="#2980">2980</a></td></tr
><tr id="gr_svn7768_2981"
><td id="2981"><a href="#2981">2981</a></td></tr
><tr id="gr_svn7768_2982"
><td id="2982"><a href="#2982">2982</a></td></tr
><tr id="gr_svn7768_2983"
><td id="2983"><a href="#2983">2983</a></td></tr
><tr id="gr_svn7768_2984"
><td id="2984"><a href="#2984">2984</a></td></tr
><tr id="gr_svn7768_2985"
><td id="2985"><a href="#2985">2985</a></td></tr
><tr id="gr_svn7768_2986"
><td id="2986"><a href="#2986">2986</a></td></tr
><tr id="gr_svn7768_2987"
><td id="2987"><a href="#2987">2987</a></td></tr
><tr id="gr_svn7768_2988"
><td id="2988"><a href="#2988">2988</a></td></tr
><tr id="gr_svn7768_2989"
><td id="2989"><a href="#2989">2989</a></td></tr
><tr id="gr_svn7768_2990"
><td id="2990"><a href="#2990">2990</a></td></tr
><tr id="gr_svn7768_2991"
><td id="2991"><a href="#2991">2991</a></td></tr
><tr id="gr_svn7768_2992"
><td id="2992"><a href="#2992">2992</a></td></tr
><tr id="gr_svn7768_2993"
><td id="2993"><a href="#2993">2993</a></td></tr
><tr id="gr_svn7768_2994"
><td id="2994"><a href="#2994">2994</a></td></tr
><tr id="gr_svn7768_2995"
><td id="2995"><a href="#2995">2995</a></td></tr
><tr id="gr_svn7768_2996"
><td id="2996"><a href="#2996">2996</a></td></tr
><tr id="gr_svn7768_2997"
><td id="2997"><a href="#2997">2997</a></td></tr
><tr id="gr_svn7768_2998"
><td id="2998"><a href="#2998">2998</a></td></tr
><tr id="gr_svn7768_2999"
><td id="2999"><a href="#2999">2999</a></td></tr
><tr id="gr_svn7768_3000"
><td id="3000"><a href="#3000">3000</a></td></tr
><tr id="gr_svn7768_3001"
><td id="3001"><a href="#3001">3001</a></td></tr
><tr id="gr_svn7768_3002"
><td id="3002"><a href="#3002">3002</a></td></tr
><tr id="gr_svn7768_3003"
><td id="3003"><a href="#3003">3003</a></td></tr
><tr id="gr_svn7768_3004"
><td id="3004"><a href="#3004">3004</a></td></tr
><tr id="gr_svn7768_3005"
><td id="3005"><a href="#3005">3005</a></td></tr
><tr id="gr_svn7768_3006"
><td id="3006"><a href="#3006">3006</a></td></tr
><tr id="gr_svn7768_3007"
><td id="3007"><a href="#3007">3007</a></td></tr
><tr id="gr_svn7768_3008"
><td id="3008"><a href="#3008">3008</a></td></tr
><tr id="gr_svn7768_3009"
><td id="3009"><a href="#3009">3009</a></td></tr
><tr id="gr_svn7768_3010"
><td id="3010"><a href="#3010">3010</a></td></tr
><tr id="gr_svn7768_3011"
><td id="3011"><a href="#3011">3011</a></td></tr
><tr id="gr_svn7768_3012"
><td id="3012"><a href="#3012">3012</a></td></tr
><tr id="gr_svn7768_3013"
><td id="3013"><a href="#3013">3013</a></td></tr
><tr id="gr_svn7768_3014"
><td id="3014"><a href="#3014">3014</a></td></tr
><tr id="gr_svn7768_3015"
><td id="3015"><a href="#3015">3015</a></td></tr
><tr id="gr_svn7768_3016"
><td id="3016"><a href="#3016">3016</a></td></tr
><tr id="gr_svn7768_3017"
><td id="3017"><a href="#3017">3017</a></td></tr
><tr id="gr_svn7768_3018"
><td id="3018"><a href="#3018">3018</a></td></tr
><tr id="gr_svn7768_3019"
><td id="3019"><a href="#3019">3019</a></td></tr
><tr id="gr_svn7768_3020"
><td id="3020"><a href="#3020">3020</a></td></tr
><tr id="gr_svn7768_3021"
><td id="3021"><a href="#3021">3021</a></td></tr
><tr id="gr_svn7768_3022"
><td id="3022"><a href="#3022">3022</a></td></tr
><tr id="gr_svn7768_3023"
><td id="3023"><a href="#3023">3023</a></td></tr
><tr id="gr_svn7768_3024"
><td id="3024"><a href="#3024">3024</a></td></tr
><tr id="gr_svn7768_3025"
><td id="3025"><a href="#3025">3025</a></td></tr
><tr id="gr_svn7768_3026"
><td id="3026"><a href="#3026">3026</a></td></tr
><tr id="gr_svn7768_3027"
><td id="3027"><a href="#3027">3027</a></td></tr
><tr id="gr_svn7768_3028"
><td id="3028"><a href="#3028">3028</a></td></tr
><tr id="gr_svn7768_3029"
><td id="3029"><a href="#3029">3029</a></td></tr
><tr id="gr_svn7768_3030"
><td id="3030"><a href="#3030">3030</a></td></tr
><tr id="gr_svn7768_3031"
><td id="3031"><a href="#3031">3031</a></td></tr
><tr id="gr_svn7768_3032"
><td id="3032"><a href="#3032">3032</a></td></tr
><tr id="gr_svn7768_3033"
><td id="3033"><a href="#3033">3033</a></td></tr
><tr id="gr_svn7768_3034"
><td id="3034"><a href="#3034">3034</a></td></tr
><tr id="gr_svn7768_3035"
><td id="3035"><a href="#3035">3035</a></td></tr
><tr id="gr_svn7768_3036"
><td id="3036"><a href="#3036">3036</a></td></tr
><tr id="gr_svn7768_3037"
><td id="3037"><a href="#3037">3037</a></td></tr
><tr id="gr_svn7768_3038"
><td id="3038"><a href="#3038">3038</a></td></tr
><tr id="gr_svn7768_3039"
><td id="3039"><a href="#3039">3039</a></td></tr
><tr id="gr_svn7768_3040"
><td id="3040"><a href="#3040">3040</a></td></tr
><tr id="gr_svn7768_3041"
><td id="3041"><a href="#3041">3041</a></td></tr
><tr id="gr_svn7768_3042"
><td id="3042"><a href="#3042">3042</a></td></tr
><tr id="gr_svn7768_3043"
><td id="3043"><a href="#3043">3043</a></td></tr
><tr id="gr_svn7768_3044"
><td id="3044"><a href="#3044">3044</a></td></tr
><tr id="gr_svn7768_3045"
><td id="3045"><a href="#3045">3045</a></td></tr
><tr id="gr_svn7768_3046"
><td id="3046"><a href="#3046">3046</a></td></tr
><tr id="gr_svn7768_3047"
><td id="3047"><a href="#3047">3047</a></td></tr
><tr id="gr_svn7768_3048"
><td id="3048"><a href="#3048">3048</a></td></tr
><tr id="gr_svn7768_3049"
><td id="3049"><a href="#3049">3049</a></td></tr
><tr id="gr_svn7768_3050"
><td id="3050"><a href="#3050">3050</a></td></tr
><tr id="gr_svn7768_3051"
><td id="3051"><a href="#3051">3051</a></td></tr
><tr id="gr_svn7768_3052"
><td id="3052"><a href="#3052">3052</a></td></tr
><tr id="gr_svn7768_3053"
><td id="3053"><a href="#3053">3053</a></td></tr
><tr id="gr_svn7768_3054"
><td id="3054"><a href="#3054">3054</a></td></tr
><tr id="gr_svn7768_3055"
><td id="3055"><a href="#3055">3055</a></td></tr
><tr id="gr_svn7768_3056"
><td id="3056"><a href="#3056">3056</a></td></tr
><tr id="gr_svn7768_3057"
><td id="3057"><a href="#3057">3057</a></td></tr
><tr id="gr_svn7768_3058"
><td id="3058"><a href="#3058">3058</a></td></tr
><tr id="gr_svn7768_3059"
><td id="3059"><a href="#3059">3059</a></td></tr
><tr id="gr_svn7768_3060"
><td id="3060"><a href="#3060">3060</a></td></tr
><tr id="gr_svn7768_3061"
><td id="3061"><a href="#3061">3061</a></td></tr
><tr id="gr_svn7768_3062"
><td id="3062"><a href="#3062">3062</a></td></tr
><tr id="gr_svn7768_3063"
><td id="3063"><a href="#3063">3063</a></td></tr
><tr id="gr_svn7768_3064"
><td id="3064"><a href="#3064">3064</a></td></tr
><tr id="gr_svn7768_3065"
><td id="3065"><a href="#3065">3065</a></td></tr
><tr id="gr_svn7768_3066"
><td id="3066"><a href="#3066">3066</a></td></tr
><tr id="gr_svn7768_3067"
><td id="3067"><a href="#3067">3067</a></td></tr
><tr id="gr_svn7768_3068"
><td id="3068"><a href="#3068">3068</a></td></tr
><tr id="gr_svn7768_3069"
><td id="3069"><a href="#3069">3069</a></td></tr
><tr id="gr_svn7768_3070"
><td id="3070"><a href="#3070">3070</a></td></tr
><tr id="gr_svn7768_3071"
><td id="3071"><a href="#3071">3071</a></td></tr
><tr id="gr_svn7768_3072"
><td id="3072"><a href="#3072">3072</a></td></tr
><tr id="gr_svn7768_3073"
><td id="3073"><a href="#3073">3073</a></td></tr
><tr id="gr_svn7768_3074"
><td id="3074"><a href="#3074">3074</a></td></tr
><tr id="gr_svn7768_3075"
><td id="3075"><a href="#3075">3075</a></td></tr
><tr id="gr_svn7768_3076"
><td id="3076"><a href="#3076">3076</a></td></tr
><tr id="gr_svn7768_3077"
><td id="3077"><a href="#3077">3077</a></td></tr
><tr id="gr_svn7768_3078"
><td id="3078"><a href="#3078">3078</a></td></tr
><tr id="gr_svn7768_3079"
><td id="3079"><a href="#3079">3079</a></td></tr
><tr id="gr_svn7768_3080"
><td id="3080"><a href="#3080">3080</a></td></tr
><tr id="gr_svn7768_3081"
><td id="3081"><a href="#3081">3081</a></td></tr
><tr id="gr_svn7768_3082"
><td id="3082"><a href="#3082">3082</a></td></tr
><tr id="gr_svn7768_3083"
><td id="3083"><a href="#3083">3083</a></td></tr
><tr id="gr_svn7768_3084"
><td id="3084"><a href="#3084">3084</a></td></tr
><tr id="gr_svn7768_3085"
><td id="3085"><a href="#3085">3085</a></td></tr
><tr id="gr_svn7768_3086"
><td id="3086"><a href="#3086">3086</a></td></tr
><tr id="gr_svn7768_3087"
><td id="3087"><a href="#3087">3087</a></td></tr
><tr id="gr_svn7768_3088"
><td id="3088"><a href="#3088">3088</a></td></tr
><tr id="gr_svn7768_3089"
><td id="3089"><a href="#3089">3089</a></td></tr
><tr id="gr_svn7768_3090"
><td id="3090"><a href="#3090">3090</a></td></tr
><tr id="gr_svn7768_3091"
><td id="3091"><a href="#3091">3091</a></td></tr
><tr id="gr_svn7768_3092"
><td id="3092"><a href="#3092">3092</a></td></tr
><tr id="gr_svn7768_3093"
><td id="3093"><a href="#3093">3093</a></td></tr
><tr id="gr_svn7768_3094"
><td id="3094"><a href="#3094">3094</a></td></tr
><tr id="gr_svn7768_3095"
><td id="3095"><a href="#3095">3095</a></td></tr
><tr id="gr_svn7768_3096"
><td id="3096"><a href="#3096">3096</a></td></tr
><tr id="gr_svn7768_3097"
><td id="3097"><a href="#3097">3097</a></td></tr
><tr id="gr_svn7768_3098"
><td id="3098"><a href="#3098">3098</a></td></tr
><tr id="gr_svn7768_3099"
><td id="3099"><a href="#3099">3099</a></td></tr
><tr id="gr_svn7768_3100"
><td id="3100"><a href="#3100">3100</a></td></tr
><tr id="gr_svn7768_3101"
><td id="3101"><a href="#3101">3101</a></td></tr
><tr id="gr_svn7768_3102"
><td id="3102"><a href="#3102">3102</a></td></tr
><tr id="gr_svn7768_3103"
><td id="3103"><a href="#3103">3103</a></td></tr
><tr id="gr_svn7768_3104"
><td id="3104"><a href="#3104">3104</a></td></tr
><tr id="gr_svn7768_3105"
><td id="3105"><a href="#3105">3105</a></td></tr
><tr id="gr_svn7768_3106"
><td id="3106"><a href="#3106">3106</a></td></tr
><tr id="gr_svn7768_3107"
><td id="3107"><a href="#3107">3107</a></td></tr
><tr id="gr_svn7768_3108"
><td id="3108"><a href="#3108">3108</a></td></tr
><tr id="gr_svn7768_3109"
><td id="3109"><a href="#3109">3109</a></td></tr
><tr id="gr_svn7768_3110"
><td id="3110"><a href="#3110">3110</a></td></tr
><tr id="gr_svn7768_3111"
><td id="3111"><a href="#3111">3111</a></td></tr
><tr id="gr_svn7768_3112"
><td id="3112"><a href="#3112">3112</a></td></tr
><tr id="gr_svn7768_3113"
><td id="3113"><a href="#3113">3113</a></td></tr
><tr id="gr_svn7768_3114"
><td id="3114"><a href="#3114">3114</a></td></tr
><tr id="gr_svn7768_3115"
><td id="3115"><a href="#3115">3115</a></td></tr
><tr id="gr_svn7768_3116"
><td id="3116"><a href="#3116">3116</a></td></tr
><tr id="gr_svn7768_3117"
><td id="3117"><a href="#3117">3117</a></td></tr
><tr id="gr_svn7768_3118"
><td id="3118"><a href="#3118">3118</a></td></tr
><tr id="gr_svn7768_3119"
><td id="3119"><a href="#3119">3119</a></td></tr
><tr id="gr_svn7768_3120"
><td id="3120"><a href="#3120">3120</a></td></tr
><tr id="gr_svn7768_3121"
><td id="3121"><a href="#3121">3121</a></td></tr
><tr id="gr_svn7768_3122"
><td id="3122"><a href="#3122">3122</a></td></tr
><tr id="gr_svn7768_3123"
><td id="3123"><a href="#3123">3123</a></td></tr
><tr id="gr_svn7768_3124"
><td id="3124"><a href="#3124">3124</a></td></tr
><tr id="gr_svn7768_3125"
><td id="3125"><a href="#3125">3125</a></td></tr
><tr id="gr_svn7768_3126"
><td id="3126"><a href="#3126">3126</a></td></tr
><tr id="gr_svn7768_3127"
><td id="3127"><a href="#3127">3127</a></td></tr
><tr id="gr_svn7768_3128"
><td id="3128"><a href="#3128">3128</a></td></tr
><tr id="gr_svn7768_3129"
><td id="3129"><a href="#3129">3129</a></td></tr
><tr id="gr_svn7768_3130"
><td id="3130"><a href="#3130">3130</a></td></tr
><tr id="gr_svn7768_3131"
><td id="3131"><a href="#3131">3131</a></td></tr
><tr id="gr_svn7768_3132"
><td id="3132"><a href="#3132">3132</a></td></tr
><tr id="gr_svn7768_3133"
><td id="3133"><a href="#3133">3133</a></td></tr
><tr id="gr_svn7768_3134"
><td id="3134"><a href="#3134">3134</a></td></tr
><tr id="gr_svn7768_3135"
><td id="3135"><a href="#3135">3135</a></td></tr
><tr id="gr_svn7768_3136"
><td id="3136"><a href="#3136">3136</a></td></tr
><tr id="gr_svn7768_3137"
><td id="3137"><a href="#3137">3137</a></td></tr
><tr id="gr_svn7768_3138"
><td id="3138"><a href="#3138">3138</a></td></tr
><tr id="gr_svn7768_3139"
><td id="3139"><a href="#3139">3139</a></td></tr
><tr id="gr_svn7768_3140"
><td id="3140"><a href="#3140">3140</a></td></tr
><tr id="gr_svn7768_3141"
><td id="3141"><a href="#3141">3141</a></td></tr
><tr id="gr_svn7768_3142"
><td id="3142"><a href="#3142">3142</a></td></tr
><tr id="gr_svn7768_3143"
><td id="3143"><a href="#3143">3143</a></td></tr
><tr id="gr_svn7768_3144"
><td id="3144"><a href="#3144">3144</a></td></tr
><tr id="gr_svn7768_3145"
><td id="3145"><a href="#3145">3145</a></td></tr
><tr id="gr_svn7768_3146"
><td id="3146"><a href="#3146">3146</a></td></tr
><tr id="gr_svn7768_3147"
><td id="3147"><a href="#3147">3147</a></td></tr
><tr id="gr_svn7768_3148"
><td id="3148"><a href="#3148">3148</a></td></tr
><tr id="gr_svn7768_3149"
><td id="3149"><a href="#3149">3149</a></td></tr
><tr id="gr_svn7768_3150"
><td id="3150"><a href="#3150">3150</a></td></tr
><tr id="gr_svn7768_3151"
><td id="3151"><a href="#3151">3151</a></td></tr
><tr id="gr_svn7768_3152"
><td id="3152"><a href="#3152">3152</a></td></tr
><tr id="gr_svn7768_3153"
><td id="3153"><a href="#3153">3153</a></td></tr
><tr id="gr_svn7768_3154"
><td id="3154"><a href="#3154">3154</a></td></tr
><tr id="gr_svn7768_3155"
><td id="3155"><a href="#3155">3155</a></td></tr
><tr id="gr_svn7768_3156"
><td id="3156"><a href="#3156">3156</a></td></tr
><tr id="gr_svn7768_3157"
><td id="3157"><a href="#3157">3157</a></td></tr
><tr id="gr_svn7768_3158"
><td id="3158"><a href="#3158">3158</a></td></tr
><tr id="gr_svn7768_3159"
><td id="3159"><a href="#3159">3159</a></td></tr
><tr id="gr_svn7768_3160"
><td id="3160"><a href="#3160">3160</a></td></tr
><tr id="gr_svn7768_3161"
><td id="3161"><a href="#3161">3161</a></td></tr
><tr id="gr_svn7768_3162"
><td id="3162"><a href="#3162">3162</a></td></tr
><tr id="gr_svn7768_3163"
><td id="3163"><a href="#3163">3163</a></td></tr
><tr id="gr_svn7768_3164"
><td id="3164"><a href="#3164">3164</a></td></tr
><tr id="gr_svn7768_3165"
><td id="3165"><a href="#3165">3165</a></td></tr
><tr id="gr_svn7768_3166"
><td id="3166"><a href="#3166">3166</a></td></tr
><tr id="gr_svn7768_3167"
><td id="3167"><a href="#3167">3167</a></td></tr
><tr id="gr_svn7768_3168"
><td id="3168"><a href="#3168">3168</a></td></tr
><tr id="gr_svn7768_3169"
><td id="3169"><a href="#3169">3169</a></td></tr
><tr id="gr_svn7768_3170"
><td id="3170"><a href="#3170">3170</a></td></tr
><tr id="gr_svn7768_3171"
><td id="3171"><a href="#3171">3171</a></td></tr
><tr id="gr_svn7768_3172"
><td id="3172"><a href="#3172">3172</a></td></tr
><tr id="gr_svn7768_3173"
><td id="3173"><a href="#3173">3173</a></td></tr
><tr id="gr_svn7768_3174"
><td id="3174"><a href="#3174">3174</a></td></tr
><tr id="gr_svn7768_3175"
><td id="3175"><a href="#3175">3175</a></td></tr
><tr id="gr_svn7768_3176"
><td id="3176"><a href="#3176">3176</a></td></tr
><tr id="gr_svn7768_3177"
><td id="3177"><a href="#3177">3177</a></td></tr
><tr id="gr_svn7768_3178"
><td id="3178"><a href="#3178">3178</a></td></tr
><tr id="gr_svn7768_3179"
><td id="3179"><a href="#3179">3179</a></td></tr
><tr id="gr_svn7768_3180"
><td id="3180"><a href="#3180">3180</a></td></tr
><tr id="gr_svn7768_3181"
><td id="3181"><a href="#3181">3181</a></td></tr
><tr id="gr_svn7768_3182"
><td id="3182"><a href="#3182">3182</a></td></tr
><tr id="gr_svn7768_3183"
><td id="3183"><a href="#3183">3183</a></td></tr
><tr id="gr_svn7768_3184"
><td id="3184"><a href="#3184">3184</a></td></tr
><tr id="gr_svn7768_3185"
><td id="3185"><a href="#3185">3185</a></td></tr
><tr id="gr_svn7768_3186"
><td id="3186"><a href="#3186">3186</a></td></tr
><tr id="gr_svn7768_3187"
><td id="3187"><a href="#3187">3187</a></td></tr
><tr id="gr_svn7768_3188"
><td id="3188"><a href="#3188">3188</a></td></tr
><tr id="gr_svn7768_3189"
><td id="3189"><a href="#3189">3189</a></td></tr
><tr id="gr_svn7768_3190"
><td id="3190"><a href="#3190">3190</a></td></tr
><tr id="gr_svn7768_3191"
><td id="3191"><a href="#3191">3191</a></td></tr
><tr id="gr_svn7768_3192"
><td id="3192"><a href="#3192">3192</a></td></tr
><tr id="gr_svn7768_3193"
><td id="3193"><a href="#3193">3193</a></td></tr
><tr id="gr_svn7768_3194"
><td id="3194"><a href="#3194">3194</a></td></tr
><tr id="gr_svn7768_3195"
><td id="3195"><a href="#3195">3195</a></td></tr
><tr id="gr_svn7768_3196"
><td id="3196"><a href="#3196">3196</a></td></tr
><tr id="gr_svn7768_3197"
><td id="3197"><a href="#3197">3197</a></td></tr
><tr id="gr_svn7768_3198"
><td id="3198"><a href="#3198">3198</a></td></tr
><tr id="gr_svn7768_3199"
><td id="3199"><a href="#3199">3199</a></td></tr
><tr id="gr_svn7768_3200"
><td id="3200"><a href="#3200">3200</a></td></tr
><tr id="gr_svn7768_3201"
><td id="3201"><a href="#3201">3201</a></td></tr
><tr id="gr_svn7768_3202"
><td id="3202"><a href="#3202">3202</a></td></tr
><tr id="gr_svn7768_3203"
><td id="3203"><a href="#3203">3203</a></td></tr
><tr id="gr_svn7768_3204"
><td id="3204"><a href="#3204">3204</a></td></tr
><tr id="gr_svn7768_3205"
><td id="3205"><a href="#3205">3205</a></td></tr
><tr id="gr_svn7768_3206"
><td id="3206"><a href="#3206">3206</a></td></tr
><tr id="gr_svn7768_3207"
><td id="3207"><a href="#3207">3207</a></td></tr
><tr id="gr_svn7768_3208"
><td id="3208"><a href="#3208">3208</a></td></tr
><tr id="gr_svn7768_3209"
><td id="3209"><a href="#3209">3209</a></td></tr
><tr id="gr_svn7768_3210"
><td id="3210"><a href="#3210">3210</a></td></tr
><tr id="gr_svn7768_3211"
><td id="3211"><a href="#3211">3211</a></td></tr
><tr id="gr_svn7768_3212"
><td id="3212"><a href="#3212">3212</a></td></tr
><tr id="gr_svn7768_3213"
><td id="3213"><a href="#3213">3213</a></td></tr
><tr id="gr_svn7768_3214"
><td id="3214"><a href="#3214">3214</a></td></tr
><tr id="gr_svn7768_3215"
><td id="3215"><a href="#3215">3215</a></td></tr
><tr id="gr_svn7768_3216"
><td id="3216"><a href="#3216">3216</a></td></tr
><tr id="gr_svn7768_3217"
><td id="3217"><a href="#3217">3217</a></td></tr
><tr id="gr_svn7768_3218"
><td id="3218"><a href="#3218">3218</a></td></tr
><tr id="gr_svn7768_3219"
><td id="3219"><a href="#3219">3219</a></td></tr
><tr id="gr_svn7768_3220"
><td id="3220"><a href="#3220">3220</a></td></tr
><tr id="gr_svn7768_3221"
><td id="3221"><a href="#3221">3221</a></td></tr
><tr id="gr_svn7768_3222"
><td id="3222"><a href="#3222">3222</a></td></tr
><tr id="gr_svn7768_3223"
><td id="3223"><a href="#3223">3223</a></td></tr
><tr id="gr_svn7768_3224"
><td id="3224"><a href="#3224">3224</a></td></tr
><tr id="gr_svn7768_3225"
><td id="3225"><a href="#3225">3225</a></td></tr
><tr id="gr_svn7768_3226"
><td id="3226"><a href="#3226">3226</a></td></tr
><tr id="gr_svn7768_3227"
><td id="3227"><a href="#3227">3227</a></td></tr
><tr id="gr_svn7768_3228"
><td id="3228"><a href="#3228">3228</a></td></tr
><tr id="gr_svn7768_3229"
><td id="3229"><a href="#3229">3229</a></td></tr
><tr id="gr_svn7768_3230"
><td id="3230"><a href="#3230">3230</a></td></tr
><tr id="gr_svn7768_3231"
><td id="3231"><a href="#3231">3231</a></td></tr
><tr id="gr_svn7768_3232"
><td id="3232"><a href="#3232">3232</a></td></tr
><tr id="gr_svn7768_3233"
><td id="3233"><a href="#3233">3233</a></td></tr
><tr id="gr_svn7768_3234"
><td id="3234"><a href="#3234">3234</a></td></tr
><tr id="gr_svn7768_3235"
><td id="3235"><a href="#3235">3235</a></td></tr
><tr id="gr_svn7768_3236"
><td id="3236"><a href="#3236">3236</a></td></tr
><tr id="gr_svn7768_3237"
><td id="3237"><a href="#3237">3237</a></td></tr
><tr id="gr_svn7768_3238"
><td id="3238"><a href="#3238">3238</a></td></tr
><tr id="gr_svn7768_3239"
><td id="3239"><a href="#3239">3239</a></td></tr
><tr id="gr_svn7768_3240"
><td id="3240"><a href="#3240">3240</a></td></tr
><tr id="gr_svn7768_3241"
><td id="3241"><a href="#3241">3241</a></td></tr
><tr id="gr_svn7768_3242"
><td id="3242"><a href="#3242">3242</a></td></tr
><tr id="gr_svn7768_3243"
><td id="3243"><a href="#3243">3243</a></td></tr
><tr id="gr_svn7768_3244"
><td id="3244"><a href="#3244">3244</a></td></tr
><tr id="gr_svn7768_3245"
><td id="3245"><a href="#3245">3245</a></td></tr
><tr id="gr_svn7768_3246"
><td id="3246"><a href="#3246">3246</a></td></tr
><tr id="gr_svn7768_3247"
><td id="3247"><a href="#3247">3247</a></td></tr
><tr id="gr_svn7768_3248"
><td id="3248"><a href="#3248">3248</a></td></tr
><tr id="gr_svn7768_3249"
><td id="3249"><a href="#3249">3249</a></td></tr
><tr id="gr_svn7768_3250"
><td id="3250"><a href="#3250">3250</a></td></tr
><tr id="gr_svn7768_3251"
><td id="3251"><a href="#3251">3251</a></td></tr
><tr id="gr_svn7768_3252"
><td id="3252"><a href="#3252">3252</a></td></tr
><tr id="gr_svn7768_3253"
><td id="3253"><a href="#3253">3253</a></td></tr
><tr id="gr_svn7768_3254"
><td id="3254"><a href="#3254">3254</a></td></tr
><tr id="gr_svn7768_3255"
><td id="3255"><a href="#3255">3255</a></td></tr
><tr id="gr_svn7768_3256"
><td id="3256"><a href="#3256">3256</a></td></tr
><tr id="gr_svn7768_3257"
><td id="3257"><a href="#3257">3257</a></td></tr
><tr id="gr_svn7768_3258"
><td id="3258"><a href="#3258">3258</a></td></tr
><tr id="gr_svn7768_3259"
><td id="3259"><a href="#3259">3259</a></td></tr
><tr id="gr_svn7768_3260"
><td id="3260"><a href="#3260">3260</a></td></tr
><tr id="gr_svn7768_3261"
><td id="3261"><a href="#3261">3261</a></td></tr
><tr id="gr_svn7768_3262"
><td id="3262"><a href="#3262">3262</a></td></tr
><tr id="gr_svn7768_3263"
><td id="3263"><a href="#3263">3263</a></td></tr
><tr id="gr_svn7768_3264"
><td id="3264"><a href="#3264">3264</a></td></tr
><tr id="gr_svn7768_3265"
><td id="3265"><a href="#3265">3265</a></td></tr
><tr id="gr_svn7768_3266"
><td id="3266"><a href="#3266">3266</a></td></tr
><tr id="gr_svn7768_3267"
><td id="3267"><a href="#3267">3267</a></td></tr
><tr id="gr_svn7768_3268"
><td id="3268"><a href="#3268">3268</a></td></tr
><tr id="gr_svn7768_3269"
><td id="3269"><a href="#3269">3269</a></td></tr
><tr id="gr_svn7768_3270"
><td id="3270"><a href="#3270">3270</a></td></tr
><tr id="gr_svn7768_3271"
><td id="3271"><a href="#3271">3271</a></td></tr
><tr id="gr_svn7768_3272"
><td id="3272"><a href="#3272">3272</a></td></tr
><tr id="gr_svn7768_3273"
><td id="3273"><a href="#3273">3273</a></td></tr
><tr id="gr_svn7768_3274"
><td id="3274"><a href="#3274">3274</a></td></tr
><tr id="gr_svn7768_3275"
><td id="3275"><a href="#3275">3275</a></td></tr
><tr id="gr_svn7768_3276"
><td id="3276"><a href="#3276">3276</a></td></tr
><tr id="gr_svn7768_3277"
><td id="3277"><a href="#3277">3277</a></td></tr
><tr id="gr_svn7768_3278"
><td id="3278"><a href="#3278">3278</a></td></tr
><tr id="gr_svn7768_3279"
><td id="3279"><a href="#3279">3279</a></td></tr
><tr id="gr_svn7768_3280"
><td id="3280"><a href="#3280">3280</a></td></tr
><tr id="gr_svn7768_3281"
><td id="3281"><a href="#3281">3281</a></td></tr
><tr id="gr_svn7768_3282"
><td id="3282"><a href="#3282">3282</a></td></tr
><tr id="gr_svn7768_3283"
><td id="3283"><a href="#3283">3283</a></td></tr
><tr id="gr_svn7768_3284"
><td id="3284"><a href="#3284">3284</a></td></tr
><tr id="gr_svn7768_3285"
><td id="3285"><a href="#3285">3285</a></td></tr
><tr id="gr_svn7768_3286"
><td id="3286"><a href="#3286">3286</a></td></tr
><tr id="gr_svn7768_3287"
><td id="3287"><a href="#3287">3287</a></td></tr
><tr id="gr_svn7768_3288"
><td id="3288"><a href="#3288">3288</a></td></tr
><tr id="gr_svn7768_3289"
><td id="3289"><a href="#3289">3289</a></td></tr
><tr id="gr_svn7768_3290"
><td id="3290"><a href="#3290">3290</a></td></tr
><tr id="gr_svn7768_3291"
><td id="3291"><a href="#3291">3291</a></td></tr
><tr id="gr_svn7768_3292"
><td id="3292"><a href="#3292">3292</a></td></tr
><tr id="gr_svn7768_3293"
><td id="3293"><a href="#3293">3293</a></td></tr
><tr id="gr_svn7768_3294"
><td id="3294"><a href="#3294">3294</a></td></tr
><tr id="gr_svn7768_3295"
><td id="3295"><a href="#3295">3295</a></td></tr
><tr id="gr_svn7768_3296"
><td id="3296"><a href="#3296">3296</a></td></tr
><tr id="gr_svn7768_3297"
><td id="3297"><a href="#3297">3297</a></td></tr
><tr id="gr_svn7768_3298"
><td id="3298"><a href="#3298">3298</a></td></tr
><tr id="gr_svn7768_3299"
><td id="3299"><a href="#3299">3299</a></td></tr
><tr id="gr_svn7768_3300"
><td id="3300"><a href="#3300">3300</a></td></tr
><tr id="gr_svn7768_3301"
><td id="3301"><a href="#3301">3301</a></td></tr
><tr id="gr_svn7768_3302"
><td id="3302"><a href="#3302">3302</a></td></tr
><tr id="gr_svn7768_3303"
><td id="3303"><a href="#3303">3303</a></td></tr
><tr id="gr_svn7768_3304"
><td id="3304"><a href="#3304">3304</a></td></tr
><tr id="gr_svn7768_3305"
><td id="3305"><a href="#3305">3305</a></td></tr
><tr id="gr_svn7768_3306"
><td id="3306"><a href="#3306">3306</a></td></tr
><tr id="gr_svn7768_3307"
><td id="3307"><a href="#3307">3307</a></td></tr
><tr id="gr_svn7768_3308"
><td id="3308"><a href="#3308">3308</a></td></tr
><tr id="gr_svn7768_3309"
><td id="3309"><a href="#3309">3309</a></td></tr
><tr id="gr_svn7768_3310"
><td id="3310"><a href="#3310">3310</a></td></tr
><tr id="gr_svn7768_3311"
><td id="3311"><a href="#3311">3311</a></td></tr
><tr id="gr_svn7768_3312"
><td id="3312"><a href="#3312">3312</a></td></tr
><tr id="gr_svn7768_3313"
><td id="3313"><a href="#3313">3313</a></td></tr
><tr id="gr_svn7768_3314"
><td id="3314"><a href="#3314">3314</a></td></tr
><tr id="gr_svn7768_3315"
><td id="3315"><a href="#3315">3315</a></td></tr
><tr id="gr_svn7768_3316"
><td id="3316"><a href="#3316">3316</a></td></tr
><tr id="gr_svn7768_3317"
><td id="3317"><a href="#3317">3317</a></td></tr
><tr id="gr_svn7768_3318"
><td id="3318"><a href="#3318">3318</a></td></tr
><tr id="gr_svn7768_3319"
><td id="3319"><a href="#3319">3319</a></td></tr
><tr id="gr_svn7768_3320"
><td id="3320"><a href="#3320">3320</a></td></tr
><tr id="gr_svn7768_3321"
><td id="3321"><a href="#3321">3321</a></td></tr
><tr id="gr_svn7768_3322"
><td id="3322"><a href="#3322">3322</a></td></tr
><tr id="gr_svn7768_3323"
><td id="3323"><a href="#3323">3323</a></td></tr
><tr id="gr_svn7768_3324"
><td id="3324"><a href="#3324">3324</a></td></tr
><tr id="gr_svn7768_3325"
><td id="3325"><a href="#3325">3325</a></td></tr
><tr id="gr_svn7768_3326"
><td id="3326"><a href="#3326">3326</a></td></tr
><tr id="gr_svn7768_3327"
><td id="3327"><a href="#3327">3327</a></td></tr
><tr id="gr_svn7768_3328"
><td id="3328"><a href="#3328">3328</a></td></tr
><tr id="gr_svn7768_3329"
><td id="3329"><a href="#3329">3329</a></td></tr
><tr id="gr_svn7768_3330"
><td id="3330"><a href="#3330">3330</a></td></tr
><tr id="gr_svn7768_3331"
><td id="3331"><a href="#3331">3331</a></td></tr
><tr id="gr_svn7768_3332"
><td id="3332"><a href="#3332">3332</a></td></tr
><tr id="gr_svn7768_3333"
><td id="3333"><a href="#3333">3333</a></td></tr
><tr id="gr_svn7768_3334"
><td id="3334"><a href="#3334">3334</a></td></tr
><tr id="gr_svn7768_3335"
><td id="3335"><a href="#3335">3335</a></td></tr
><tr id="gr_svn7768_3336"
><td id="3336"><a href="#3336">3336</a></td></tr
><tr id="gr_svn7768_3337"
><td id="3337"><a href="#3337">3337</a></td></tr
><tr id="gr_svn7768_3338"
><td id="3338"><a href="#3338">3338</a></td></tr
><tr id="gr_svn7768_3339"
><td id="3339"><a href="#3339">3339</a></td></tr
><tr id="gr_svn7768_3340"
><td id="3340"><a href="#3340">3340</a></td></tr
><tr id="gr_svn7768_3341"
><td id="3341"><a href="#3341">3341</a></td></tr
><tr id="gr_svn7768_3342"
><td id="3342"><a href="#3342">3342</a></td></tr
><tr id="gr_svn7768_3343"
><td id="3343"><a href="#3343">3343</a></td></tr
><tr id="gr_svn7768_3344"
><td id="3344"><a href="#3344">3344</a></td></tr
><tr id="gr_svn7768_3345"
><td id="3345"><a href="#3345">3345</a></td></tr
><tr id="gr_svn7768_3346"
><td id="3346"><a href="#3346">3346</a></td></tr
><tr id="gr_svn7768_3347"
><td id="3347"><a href="#3347">3347</a></td></tr
><tr id="gr_svn7768_3348"
><td id="3348"><a href="#3348">3348</a></td></tr
><tr id="gr_svn7768_3349"
><td id="3349"><a href="#3349">3349</a></td></tr
><tr id="gr_svn7768_3350"
><td id="3350"><a href="#3350">3350</a></td></tr
><tr id="gr_svn7768_3351"
><td id="3351"><a href="#3351">3351</a></td></tr
><tr id="gr_svn7768_3352"
><td id="3352"><a href="#3352">3352</a></td></tr
><tr id="gr_svn7768_3353"
><td id="3353"><a href="#3353">3353</a></td></tr
><tr id="gr_svn7768_3354"
><td id="3354"><a href="#3354">3354</a></td></tr
><tr id="gr_svn7768_3355"
><td id="3355"><a href="#3355">3355</a></td></tr
><tr id="gr_svn7768_3356"
><td id="3356"><a href="#3356">3356</a></td></tr
><tr id="gr_svn7768_3357"
><td id="3357"><a href="#3357">3357</a></td></tr
><tr id="gr_svn7768_3358"
><td id="3358"><a href="#3358">3358</a></td></tr
><tr id="gr_svn7768_3359"
><td id="3359"><a href="#3359">3359</a></td></tr
><tr id="gr_svn7768_3360"
><td id="3360"><a href="#3360">3360</a></td></tr
><tr id="gr_svn7768_3361"
><td id="3361"><a href="#3361">3361</a></td></tr
><tr id="gr_svn7768_3362"
><td id="3362"><a href="#3362">3362</a></td></tr
><tr id="gr_svn7768_3363"
><td id="3363"><a href="#3363">3363</a></td></tr
><tr id="gr_svn7768_3364"
><td id="3364"><a href="#3364">3364</a></td></tr
><tr id="gr_svn7768_3365"
><td id="3365"><a href="#3365">3365</a></td></tr
><tr id="gr_svn7768_3366"
><td id="3366"><a href="#3366">3366</a></td></tr
><tr id="gr_svn7768_3367"
><td id="3367"><a href="#3367">3367</a></td></tr
><tr id="gr_svn7768_3368"
><td id="3368"><a href="#3368">3368</a></td></tr
><tr id="gr_svn7768_3369"
><td id="3369"><a href="#3369">3369</a></td></tr
><tr id="gr_svn7768_3370"
><td id="3370"><a href="#3370">3370</a></td></tr
><tr id="gr_svn7768_3371"
><td id="3371"><a href="#3371">3371</a></td></tr
><tr id="gr_svn7768_3372"
><td id="3372"><a href="#3372">3372</a></td></tr
><tr id="gr_svn7768_3373"
><td id="3373"><a href="#3373">3373</a></td></tr
><tr id="gr_svn7768_3374"
><td id="3374"><a href="#3374">3374</a></td></tr
><tr id="gr_svn7768_3375"
><td id="3375"><a href="#3375">3375</a></td></tr
><tr id="gr_svn7768_3376"
><td id="3376"><a href="#3376">3376</a></td></tr
><tr id="gr_svn7768_3377"
><td id="3377"><a href="#3377">3377</a></td></tr
><tr id="gr_svn7768_3378"
><td id="3378"><a href="#3378">3378</a></td></tr
><tr id="gr_svn7768_3379"
><td id="3379"><a href="#3379">3379</a></td></tr
><tr id="gr_svn7768_3380"
><td id="3380"><a href="#3380">3380</a></td></tr
><tr id="gr_svn7768_3381"
><td id="3381"><a href="#3381">3381</a></td></tr
><tr id="gr_svn7768_3382"
><td id="3382"><a href="#3382">3382</a></td></tr
><tr id="gr_svn7768_3383"
><td id="3383"><a href="#3383">3383</a></td></tr
><tr id="gr_svn7768_3384"
><td id="3384"><a href="#3384">3384</a></td></tr
><tr id="gr_svn7768_3385"
><td id="3385"><a href="#3385">3385</a></td></tr
><tr id="gr_svn7768_3386"
><td id="3386"><a href="#3386">3386</a></td></tr
><tr id="gr_svn7768_3387"
><td id="3387"><a href="#3387">3387</a></td></tr
><tr id="gr_svn7768_3388"
><td id="3388"><a href="#3388">3388</a></td></tr
><tr id="gr_svn7768_3389"
><td id="3389"><a href="#3389">3389</a></td></tr
><tr id="gr_svn7768_3390"
><td id="3390"><a href="#3390">3390</a></td></tr
><tr id="gr_svn7768_3391"
><td id="3391"><a href="#3391">3391</a></td></tr
><tr id="gr_svn7768_3392"
><td id="3392"><a href="#3392">3392</a></td></tr
><tr id="gr_svn7768_3393"
><td id="3393"><a href="#3393">3393</a></td></tr
><tr id="gr_svn7768_3394"
><td id="3394"><a href="#3394">3394</a></td></tr
><tr id="gr_svn7768_3395"
><td id="3395"><a href="#3395">3395</a></td></tr
><tr id="gr_svn7768_3396"
><td id="3396"><a href="#3396">3396</a></td></tr
><tr id="gr_svn7768_3397"
><td id="3397"><a href="#3397">3397</a></td></tr
><tr id="gr_svn7768_3398"
><td id="3398"><a href="#3398">3398</a></td></tr
><tr id="gr_svn7768_3399"
><td id="3399"><a href="#3399">3399</a></td></tr
><tr id="gr_svn7768_3400"
><td id="3400"><a href="#3400">3400</a></td></tr
><tr id="gr_svn7768_3401"
><td id="3401"><a href="#3401">3401</a></td></tr
><tr id="gr_svn7768_3402"
><td id="3402"><a href="#3402">3402</a></td></tr
><tr id="gr_svn7768_3403"
><td id="3403"><a href="#3403">3403</a></td></tr
><tr id="gr_svn7768_3404"
><td id="3404"><a href="#3404">3404</a></td></tr
><tr id="gr_svn7768_3405"
><td id="3405"><a href="#3405">3405</a></td></tr
><tr id="gr_svn7768_3406"
><td id="3406"><a href="#3406">3406</a></td></tr
><tr id="gr_svn7768_3407"
><td id="3407"><a href="#3407">3407</a></td></tr
><tr id="gr_svn7768_3408"
><td id="3408"><a href="#3408">3408</a></td></tr
><tr id="gr_svn7768_3409"
><td id="3409"><a href="#3409">3409</a></td></tr
><tr id="gr_svn7768_3410"
><td id="3410"><a href="#3410">3410</a></td></tr
><tr id="gr_svn7768_3411"
><td id="3411"><a href="#3411">3411</a></td></tr
><tr id="gr_svn7768_3412"
><td id="3412"><a href="#3412">3412</a></td></tr
><tr id="gr_svn7768_3413"
><td id="3413"><a href="#3413">3413</a></td></tr
><tr id="gr_svn7768_3414"
><td id="3414"><a href="#3414">3414</a></td></tr
><tr id="gr_svn7768_3415"
><td id="3415"><a href="#3415">3415</a></td></tr
><tr id="gr_svn7768_3416"
><td id="3416"><a href="#3416">3416</a></td></tr
><tr id="gr_svn7768_3417"
><td id="3417"><a href="#3417">3417</a></td></tr
><tr id="gr_svn7768_3418"
><td id="3418"><a href="#3418">3418</a></td></tr
><tr id="gr_svn7768_3419"
><td id="3419"><a href="#3419">3419</a></td></tr
><tr id="gr_svn7768_3420"
><td id="3420"><a href="#3420">3420</a></td></tr
><tr id="gr_svn7768_3421"
><td id="3421"><a href="#3421">3421</a></td></tr
><tr id="gr_svn7768_3422"
><td id="3422"><a href="#3422">3422</a></td></tr
><tr id="gr_svn7768_3423"
><td id="3423"><a href="#3423">3423</a></td></tr
><tr id="gr_svn7768_3424"
><td id="3424"><a href="#3424">3424</a></td></tr
><tr id="gr_svn7768_3425"
><td id="3425"><a href="#3425">3425</a></td></tr
><tr id="gr_svn7768_3426"
><td id="3426"><a href="#3426">3426</a></td></tr
><tr id="gr_svn7768_3427"
><td id="3427"><a href="#3427">3427</a></td></tr
><tr id="gr_svn7768_3428"
><td id="3428"><a href="#3428">3428</a></td></tr
><tr id="gr_svn7768_3429"
><td id="3429"><a href="#3429">3429</a></td></tr
><tr id="gr_svn7768_3430"
><td id="3430"><a href="#3430">3430</a></td></tr
><tr id="gr_svn7768_3431"
><td id="3431"><a href="#3431">3431</a></td></tr
><tr id="gr_svn7768_3432"
><td id="3432"><a href="#3432">3432</a></td></tr
><tr id="gr_svn7768_3433"
><td id="3433"><a href="#3433">3433</a></td></tr
><tr id="gr_svn7768_3434"
><td id="3434"><a href="#3434">3434</a></td></tr
><tr id="gr_svn7768_3435"
><td id="3435"><a href="#3435">3435</a></td></tr
><tr id="gr_svn7768_3436"
><td id="3436"><a href="#3436">3436</a></td></tr
><tr id="gr_svn7768_3437"
><td id="3437"><a href="#3437">3437</a></td></tr
><tr id="gr_svn7768_3438"
><td id="3438"><a href="#3438">3438</a></td></tr
><tr id="gr_svn7768_3439"
><td id="3439"><a href="#3439">3439</a></td></tr
><tr id="gr_svn7768_3440"
><td id="3440"><a href="#3440">3440</a></td></tr
><tr id="gr_svn7768_3441"
><td id="3441"><a href="#3441">3441</a></td></tr
><tr id="gr_svn7768_3442"
><td id="3442"><a href="#3442">3442</a></td></tr
><tr id="gr_svn7768_3443"
><td id="3443"><a href="#3443">3443</a></td></tr
><tr id="gr_svn7768_3444"
><td id="3444"><a href="#3444">3444</a></td></tr
><tr id="gr_svn7768_3445"
><td id="3445"><a href="#3445">3445</a></td></tr
><tr id="gr_svn7768_3446"
><td id="3446"><a href="#3446">3446</a></td></tr
><tr id="gr_svn7768_3447"
><td id="3447"><a href="#3447">3447</a></td></tr
><tr id="gr_svn7768_3448"
><td id="3448"><a href="#3448">3448</a></td></tr
><tr id="gr_svn7768_3449"
><td id="3449"><a href="#3449">3449</a></td></tr
><tr id="gr_svn7768_3450"
><td id="3450"><a href="#3450">3450</a></td></tr
><tr id="gr_svn7768_3451"
><td id="3451"><a href="#3451">3451</a></td></tr
><tr id="gr_svn7768_3452"
><td id="3452"><a href="#3452">3452</a></td></tr
><tr id="gr_svn7768_3453"
><td id="3453"><a href="#3453">3453</a></td></tr
><tr id="gr_svn7768_3454"
><td id="3454"><a href="#3454">3454</a></td></tr
><tr id="gr_svn7768_3455"
><td id="3455"><a href="#3455">3455</a></td></tr
><tr id="gr_svn7768_3456"
><td id="3456"><a href="#3456">3456</a></td></tr
><tr id="gr_svn7768_3457"
><td id="3457"><a href="#3457">3457</a></td></tr
><tr id="gr_svn7768_3458"
><td id="3458"><a href="#3458">3458</a></td></tr
><tr id="gr_svn7768_3459"
><td id="3459"><a href="#3459">3459</a></td></tr
><tr id="gr_svn7768_3460"
><td id="3460"><a href="#3460">3460</a></td></tr
><tr id="gr_svn7768_3461"
><td id="3461"><a href="#3461">3461</a></td></tr
><tr id="gr_svn7768_3462"
><td id="3462"><a href="#3462">3462</a></td></tr
><tr id="gr_svn7768_3463"
><td id="3463"><a href="#3463">3463</a></td></tr
><tr id="gr_svn7768_3464"
><td id="3464"><a href="#3464">3464</a></td></tr
><tr id="gr_svn7768_3465"
><td id="3465"><a href="#3465">3465</a></td></tr
><tr id="gr_svn7768_3466"
><td id="3466"><a href="#3466">3466</a></td></tr
><tr id="gr_svn7768_3467"
><td id="3467"><a href="#3467">3467</a></td></tr
><tr id="gr_svn7768_3468"
><td id="3468"><a href="#3468">3468</a></td></tr
><tr id="gr_svn7768_3469"
><td id="3469"><a href="#3469">3469</a></td></tr
><tr id="gr_svn7768_3470"
><td id="3470"><a href="#3470">3470</a></td></tr
><tr id="gr_svn7768_3471"
><td id="3471"><a href="#3471">3471</a></td></tr
><tr id="gr_svn7768_3472"
><td id="3472"><a href="#3472">3472</a></td></tr
><tr id="gr_svn7768_3473"
><td id="3473"><a href="#3473">3473</a></td></tr
><tr id="gr_svn7768_3474"
><td id="3474"><a href="#3474">3474</a></td></tr
><tr id="gr_svn7768_3475"
><td id="3475"><a href="#3475">3475</a></td></tr
><tr id="gr_svn7768_3476"
><td id="3476"><a href="#3476">3476</a></td></tr
><tr id="gr_svn7768_3477"
><td id="3477"><a href="#3477">3477</a></td></tr
><tr id="gr_svn7768_3478"
><td id="3478"><a href="#3478">3478</a></td></tr
><tr id="gr_svn7768_3479"
><td id="3479"><a href="#3479">3479</a></td></tr
><tr id="gr_svn7768_3480"
><td id="3480"><a href="#3480">3480</a></td></tr
><tr id="gr_svn7768_3481"
><td id="3481"><a href="#3481">3481</a></td></tr
><tr id="gr_svn7768_3482"
><td id="3482"><a href="#3482">3482</a></td></tr
><tr id="gr_svn7768_3483"
><td id="3483"><a href="#3483">3483</a></td></tr
><tr id="gr_svn7768_3484"
><td id="3484"><a href="#3484">3484</a></td></tr
><tr id="gr_svn7768_3485"
><td id="3485"><a href="#3485">3485</a></td></tr
><tr id="gr_svn7768_3486"
><td id="3486"><a href="#3486">3486</a></td></tr
><tr id="gr_svn7768_3487"
><td id="3487"><a href="#3487">3487</a></td></tr
><tr id="gr_svn7768_3488"
><td id="3488"><a href="#3488">3488</a></td></tr
><tr id="gr_svn7768_3489"
><td id="3489"><a href="#3489">3489</a></td></tr
><tr id="gr_svn7768_3490"
><td id="3490"><a href="#3490">3490</a></td></tr
><tr id="gr_svn7768_3491"
><td id="3491"><a href="#3491">3491</a></td></tr
><tr id="gr_svn7768_3492"
><td id="3492"><a href="#3492">3492</a></td></tr
><tr id="gr_svn7768_3493"
><td id="3493"><a href="#3493">3493</a></td></tr
><tr id="gr_svn7768_3494"
><td id="3494"><a href="#3494">3494</a></td></tr
><tr id="gr_svn7768_3495"
><td id="3495"><a href="#3495">3495</a></td></tr
><tr id="gr_svn7768_3496"
><td id="3496"><a href="#3496">3496</a></td></tr
><tr id="gr_svn7768_3497"
><td id="3497"><a href="#3497">3497</a></td></tr
><tr id="gr_svn7768_3498"
><td id="3498"><a href="#3498">3498</a></td></tr
><tr id="gr_svn7768_3499"
><td id="3499"><a href="#3499">3499</a></td></tr
><tr id="gr_svn7768_3500"
><td id="3500"><a href="#3500">3500</a></td></tr
><tr id="gr_svn7768_3501"
><td id="3501"><a href="#3501">3501</a></td></tr
><tr id="gr_svn7768_3502"
><td id="3502"><a href="#3502">3502</a></td></tr
><tr id="gr_svn7768_3503"
><td id="3503"><a href="#3503">3503</a></td></tr
><tr id="gr_svn7768_3504"
><td id="3504"><a href="#3504">3504</a></td></tr
><tr id="gr_svn7768_3505"
><td id="3505"><a href="#3505">3505</a></td></tr
><tr id="gr_svn7768_3506"
><td id="3506"><a href="#3506">3506</a></td></tr
><tr id="gr_svn7768_3507"
><td id="3507"><a href="#3507">3507</a></td></tr
><tr id="gr_svn7768_3508"
><td id="3508"><a href="#3508">3508</a></td></tr
><tr id="gr_svn7768_3509"
><td id="3509"><a href="#3509">3509</a></td></tr
><tr id="gr_svn7768_3510"
><td id="3510"><a href="#3510">3510</a></td></tr
><tr id="gr_svn7768_3511"
><td id="3511"><a href="#3511">3511</a></td></tr
><tr id="gr_svn7768_3512"
><td id="3512"><a href="#3512">3512</a></td></tr
><tr id="gr_svn7768_3513"
><td id="3513"><a href="#3513">3513</a></td></tr
><tr id="gr_svn7768_3514"
><td id="3514"><a href="#3514">3514</a></td></tr
><tr id="gr_svn7768_3515"
><td id="3515"><a href="#3515">3515</a></td></tr
><tr id="gr_svn7768_3516"
><td id="3516"><a href="#3516">3516</a></td></tr
><tr id="gr_svn7768_3517"
><td id="3517"><a href="#3517">3517</a></td></tr
><tr id="gr_svn7768_3518"
><td id="3518"><a href="#3518">3518</a></td></tr
><tr id="gr_svn7768_3519"
><td id="3519"><a href="#3519">3519</a></td></tr
><tr id="gr_svn7768_3520"
><td id="3520"><a href="#3520">3520</a></td></tr
><tr id="gr_svn7768_3521"
><td id="3521"><a href="#3521">3521</a></td></tr
><tr id="gr_svn7768_3522"
><td id="3522"><a href="#3522">3522</a></td></tr
><tr id="gr_svn7768_3523"
><td id="3523"><a href="#3523">3523</a></td></tr
><tr id="gr_svn7768_3524"
><td id="3524"><a href="#3524">3524</a></td></tr
><tr id="gr_svn7768_3525"
><td id="3525"><a href="#3525">3525</a></td></tr
><tr id="gr_svn7768_3526"
><td id="3526"><a href="#3526">3526</a></td></tr
><tr id="gr_svn7768_3527"
><td id="3527"><a href="#3527">3527</a></td></tr
><tr id="gr_svn7768_3528"
><td id="3528"><a href="#3528">3528</a></td></tr
><tr id="gr_svn7768_3529"
><td id="3529"><a href="#3529">3529</a></td></tr
><tr id="gr_svn7768_3530"
><td id="3530"><a href="#3530">3530</a></td></tr
><tr id="gr_svn7768_3531"
><td id="3531"><a href="#3531">3531</a></td></tr
><tr id="gr_svn7768_3532"
><td id="3532"><a href="#3532">3532</a></td></tr
><tr id="gr_svn7768_3533"
><td id="3533"><a href="#3533">3533</a></td></tr
><tr id="gr_svn7768_3534"
><td id="3534"><a href="#3534">3534</a></td></tr
><tr id="gr_svn7768_3535"
><td id="3535"><a href="#3535">3535</a></td></tr
><tr id="gr_svn7768_3536"
><td id="3536"><a href="#3536">3536</a></td></tr
><tr id="gr_svn7768_3537"
><td id="3537"><a href="#3537">3537</a></td></tr
><tr id="gr_svn7768_3538"
><td id="3538"><a href="#3538">3538</a></td></tr
><tr id="gr_svn7768_3539"
><td id="3539"><a href="#3539">3539</a></td></tr
><tr id="gr_svn7768_3540"
><td id="3540"><a href="#3540">3540</a></td></tr
><tr id="gr_svn7768_3541"
><td id="3541"><a href="#3541">3541</a></td></tr
><tr id="gr_svn7768_3542"
><td id="3542"><a href="#3542">3542</a></td></tr
><tr id="gr_svn7768_3543"
><td id="3543"><a href="#3543">3543</a></td></tr
><tr id="gr_svn7768_3544"
><td id="3544"><a href="#3544">3544</a></td></tr
><tr id="gr_svn7768_3545"
><td id="3545"><a href="#3545">3545</a></td></tr
><tr id="gr_svn7768_3546"
><td id="3546"><a href="#3546">3546</a></td></tr
><tr id="gr_svn7768_3547"
><td id="3547"><a href="#3547">3547</a></td></tr
><tr id="gr_svn7768_3548"
><td id="3548"><a href="#3548">3548</a></td></tr
><tr id="gr_svn7768_3549"
><td id="3549"><a href="#3549">3549</a></td></tr
><tr id="gr_svn7768_3550"
><td id="3550"><a href="#3550">3550</a></td></tr
><tr id="gr_svn7768_3551"
><td id="3551"><a href="#3551">3551</a></td></tr
><tr id="gr_svn7768_3552"
><td id="3552"><a href="#3552">3552</a></td></tr
><tr id="gr_svn7768_3553"
><td id="3553"><a href="#3553">3553</a></td></tr
><tr id="gr_svn7768_3554"
><td id="3554"><a href="#3554">3554</a></td></tr
><tr id="gr_svn7768_3555"
><td id="3555"><a href="#3555">3555</a></td></tr
><tr id="gr_svn7768_3556"
><td id="3556"><a href="#3556">3556</a></td></tr
><tr id="gr_svn7768_3557"
><td id="3557"><a href="#3557">3557</a></td></tr
><tr id="gr_svn7768_3558"
><td id="3558"><a href="#3558">3558</a></td></tr
><tr id="gr_svn7768_3559"
><td id="3559"><a href="#3559">3559</a></td></tr
><tr id="gr_svn7768_3560"
><td id="3560"><a href="#3560">3560</a></td></tr
><tr id="gr_svn7768_3561"
><td id="3561"><a href="#3561">3561</a></td></tr
><tr id="gr_svn7768_3562"
><td id="3562"><a href="#3562">3562</a></td></tr
><tr id="gr_svn7768_3563"
><td id="3563"><a href="#3563">3563</a></td></tr
><tr id="gr_svn7768_3564"
><td id="3564"><a href="#3564">3564</a></td></tr
><tr id="gr_svn7768_3565"
><td id="3565"><a href="#3565">3565</a></td></tr
><tr id="gr_svn7768_3566"
><td id="3566"><a href="#3566">3566</a></td></tr
><tr id="gr_svn7768_3567"
><td id="3567"><a href="#3567">3567</a></td></tr
><tr id="gr_svn7768_3568"
><td id="3568"><a href="#3568">3568</a></td></tr
><tr id="gr_svn7768_3569"
><td id="3569"><a href="#3569">3569</a></td></tr
><tr id="gr_svn7768_3570"
><td id="3570"><a href="#3570">3570</a></td></tr
><tr id="gr_svn7768_3571"
><td id="3571"><a href="#3571">3571</a></td></tr
><tr id="gr_svn7768_3572"
><td id="3572"><a href="#3572">3572</a></td></tr
><tr id="gr_svn7768_3573"
><td id="3573"><a href="#3573">3573</a></td></tr
><tr id="gr_svn7768_3574"
><td id="3574"><a href="#3574">3574</a></td></tr
><tr id="gr_svn7768_3575"
><td id="3575"><a href="#3575">3575</a></td></tr
><tr id="gr_svn7768_3576"
><td id="3576"><a href="#3576">3576</a></td></tr
><tr id="gr_svn7768_3577"
><td id="3577"><a href="#3577">3577</a></td></tr
><tr id="gr_svn7768_3578"
><td id="3578"><a href="#3578">3578</a></td></tr
><tr id="gr_svn7768_3579"
><td id="3579"><a href="#3579">3579</a></td></tr
><tr id="gr_svn7768_3580"
><td id="3580"><a href="#3580">3580</a></td></tr
><tr id="gr_svn7768_3581"
><td id="3581"><a href="#3581">3581</a></td></tr
><tr id="gr_svn7768_3582"
><td id="3582"><a href="#3582">3582</a></td></tr
><tr id="gr_svn7768_3583"
><td id="3583"><a href="#3583">3583</a></td></tr
><tr id="gr_svn7768_3584"
><td id="3584"><a href="#3584">3584</a></td></tr
><tr id="gr_svn7768_3585"
><td id="3585"><a href="#3585">3585</a></td></tr
><tr id="gr_svn7768_3586"
><td id="3586"><a href="#3586">3586</a></td></tr
><tr id="gr_svn7768_3587"
><td id="3587"><a href="#3587">3587</a></td></tr
><tr id="gr_svn7768_3588"
><td id="3588"><a href="#3588">3588</a></td></tr
><tr id="gr_svn7768_3589"
><td id="3589"><a href="#3589">3589</a></td></tr
><tr id="gr_svn7768_3590"
><td id="3590"><a href="#3590">3590</a></td></tr
><tr id="gr_svn7768_3591"
><td id="3591"><a href="#3591">3591</a></td></tr
><tr id="gr_svn7768_3592"
><td id="3592"><a href="#3592">3592</a></td></tr
><tr id="gr_svn7768_3593"
><td id="3593"><a href="#3593">3593</a></td></tr
><tr id="gr_svn7768_3594"
><td id="3594"><a href="#3594">3594</a></td></tr
><tr id="gr_svn7768_3595"
><td id="3595"><a href="#3595">3595</a></td></tr
><tr id="gr_svn7768_3596"
><td id="3596"><a href="#3596">3596</a></td></tr
><tr id="gr_svn7768_3597"
><td id="3597"><a href="#3597">3597</a></td></tr
><tr id="gr_svn7768_3598"
><td id="3598"><a href="#3598">3598</a></td></tr
><tr id="gr_svn7768_3599"
><td id="3599"><a href="#3599">3599</a></td></tr
><tr id="gr_svn7768_3600"
><td id="3600"><a href="#3600">3600</a></td></tr
><tr id="gr_svn7768_3601"
><td id="3601"><a href="#3601">3601</a></td></tr
><tr id="gr_svn7768_3602"
><td id="3602"><a href="#3602">3602</a></td></tr
><tr id="gr_svn7768_3603"
><td id="3603"><a href="#3603">3603</a></td></tr
><tr id="gr_svn7768_3604"
><td id="3604"><a href="#3604">3604</a></td></tr
><tr id="gr_svn7768_3605"
><td id="3605"><a href="#3605">3605</a></td></tr
><tr id="gr_svn7768_3606"
><td id="3606"><a href="#3606">3606</a></td></tr
><tr id="gr_svn7768_3607"
><td id="3607"><a href="#3607">3607</a></td></tr
><tr id="gr_svn7768_3608"
><td id="3608"><a href="#3608">3608</a></td></tr
><tr id="gr_svn7768_3609"
><td id="3609"><a href="#3609">3609</a></td></tr
><tr id="gr_svn7768_3610"
><td id="3610"><a href="#3610">3610</a></td></tr
><tr id="gr_svn7768_3611"
><td id="3611"><a href="#3611">3611</a></td></tr
><tr id="gr_svn7768_3612"
><td id="3612"><a href="#3612">3612</a></td></tr
><tr id="gr_svn7768_3613"
><td id="3613"><a href="#3613">3613</a></td></tr
><tr id="gr_svn7768_3614"
><td id="3614"><a href="#3614">3614</a></td></tr
><tr id="gr_svn7768_3615"
><td id="3615"><a href="#3615">3615</a></td></tr
><tr id="gr_svn7768_3616"
><td id="3616"><a href="#3616">3616</a></td></tr
><tr id="gr_svn7768_3617"
><td id="3617"><a href="#3617">3617</a></td></tr
><tr id="gr_svn7768_3618"
><td id="3618"><a href="#3618">3618</a></td></tr
><tr id="gr_svn7768_3619"
><td id="3619"><a href="#3619">3619</a></td></tr
><tr id="gr_svn7768_3620"
><td id="3620"><a href="#3620">3620</a></td></tr
><tr id="gr_svn7768_3621"
><td id="3621"><a href="#3621">3621</a></td></tr
><tr id="gr_svn7768_3622"
><td id="3622"><a href="#3622">3622</a></td></tr
><tr id="gr_svn7768_3623"
><td id="3623"><a href="#3623">3623</a></td></tr
><tr id="gr_svn7768_3624"
><td id="3624"><a href="#3624">3624</a></td></tr
><tr id="gr_svn7768_3625"
><td id="3625"><a href="#3625">3625</a></td></tr
><tr id="gr_svn7768_3626"
><td id="3626"><a href="#3626">3626</a></td></tr
><tr id="gr_svn7768_3627"
><td id="3627"><a href="#3627">3627</a></td></tr
><tr id="gr_svn7768_3628"
><td id="3628"><a href="#3628">3628</a></td></tr
><tr id="gr_svn7768_3629"
><td id="3629"><a href="#3629">3629</a></td></tr
><tr id="gr_svn7768_3630"
><td id="3630"><a href="#3630">3630</a></td></tr
><tr id="gr_svn7768_3631"
><td id="3631"><a href="#3631">3631</a></td></tr
><tr id="gr_svn7768_3632"
><td id="3632"><a href="#3632">3632</a></td></tr
><tr id="gr_svn7768_3633"
><td id="3633"><a href="#3633">3633</a></td></tr
><tr id="gr_svn7768_3634"
><td id="3634"><a href="#3634">3634</a></td></tr
><tr id="gr_svn7768_3635"
><td id="3635"><a href="#3635">3635</a></td></tr
><tr id="gr_svn7768_3636"
><td id="3636"><a href="#3636">3636</a></td></tr
><tr id="gr_svn7768_3637"
><td id="3637"><a href="#3637">3637</a></td></tr
><tr id="gr_svn7768_3638"
><td id="3638"><a href="#3638">3638</a></td></tr
><tr id="gr_svn7768_3639"
><td id="3639"><a href="#3639">3639</a></td></tr
><tr id="gr_svn7768_3640"
><td id="3640"><a href="#3640">3640</a></td></tr
><tr id="gr_svn7768_3641"
><td id="3641"><a href="#3641">3641</a></td></tr
><tr id="gr_svn7768_3642"
><td id="3642"><a href="#3642">3642</a></td></tr
><tr id="gr_svn7768_3643"
><td id="3643"><a href="#3643">3643</a></td></tr
><tr id="gr_svn7768_3644"
><td id="3644"><a href="#3644">3644</a></td></tr
><tr id="gr_svn7768_3645"
><td id="3645"><a href="#3645">3645</a></td></tr
><tr id="gr_svn7768_3646"
><td id="3646"><a href="#3646">3646</a></td></tr
><tr id="gr_svn7768_3647"
><td id="3647"><a href="#3647">3647</a></td></tr
><tr id="gr_svn7768_3648"
><td id="3648"><a href="#3648">3648</a></td></tr
><tr id="gr_svn7768_3649"
><td id="3649"><a href="#3649">3649</a></td></tr
><tr id="gr_svn7768_3650"
><td id="3650"><a href="#3650">3650</a></td></tr
><tr id="gr_svn7768_3651"
><td id="3651"><a href="#3651">3651</a></td></tr
><tr id="gr_svn7768_3652"
><td id="3652"><a href="#3652">3652</a></td></tr
><tr id="gr_svn7768_3653"
><td id="3653"><a href="#3653">3653</a></td></tr
><tr id="gr_svn7768_3654"
><td id="3654"><a href="#3654">3654</a></td></tr
><tr id="gr_svn7768_3655"
><td id="3655"><a href="#3655">3655</a></td></tr
><tr id="gr_svn7768_3656"
><td id="3656"><a href="#3656">3656</a></td></tr
><tr id="gr_svn7768_3657"
><td id="3657"><a href="#3657">3657</a></td></tr
><tr id="gr_svn7768_3658"
><td id="3658"><a href="#3658">3658</a></td></tr
><tr id="gr_svn7768_3659"
><td id="3659"><a href="#3659">3659</a></td></tr
><tr id="gr_svn7768_3660"
><td id="3660"><a href="#3660">3660</a></td></tr
><tr id="gr_svn7768_3661"
><td id="3661"><a href="#3661">3661</a></td></tr
><tr id="gr_svn7768_3662"
><td id="3662"><a href="#3662">3662</a></td></tr
><tr id="gr_svn7768_3663"
><td id="3663"><a href="#3663">3663</a></td></tr
><tr id="gr_svn7768_3664"
><td id="3664"><a href="#3664">3664</a></td></tr
><tr id="gr_svn7768_3665"
><td id="3665"><a href="#3665">3665</a></td></tr
><tr id="gr_svn7768_3666"
><td id="3666"><a href="#3666">3666</a></td></tr
><tr id="gr_svn7768_3667"
><td id="3667"><a href="#3667">3667</a></td></tr
><tr id="gr_svn7768_3668"
><td id="3668"><a href="#3668">3668</a></td></tr
><tr id="gr_svn7768_3669"
><td id="3669"><a href="#3669">3669</a></td></tr
><tr id="gr_svn7768_3670"
><td id="3670"><a href="#3670">3670</a></td></tr
><tr id="gr_svn7768_3671"
><td id="3671"><a href="#3671">3671</a></td></tr
><tr id="gr_svn7768_3672"
><td id="3672"><a href="#3672">3672</a></td></tr
><tr id="gr_svn7768_3673"
><td id="3673"><a href="#3673">3673</a></td></tr
><tr id="gr_svn7768_3674"
><td id="3674"><a href="#3674">3674</a></td></tr
><tr id="gr_svn7768_3675"
><td id="3675"><a href="#3675">3675</a></td></tr
><tr id="gr_svn7768_3676"
><td id="3676"><a href="#3676">3676</a></td></tr
><tr id="gr_svn7768_3677"
><td id="3677"><a href="#3677">3677</a></td></tr
><tr id="gr_svn7768_3678"
><td id="3678"><a href="#3678">3678</a></td></tr
><tr id="gr_svn7768_3679"
><td id="3679"><a href="#3679">3679</a></td></tr
><tr id="gr_svn7768_3680"
><td id="3680"><a href="#3680">3680</a></td></tr
><tr id="gr_svn7768_3681"
><td id="3681"><a href="#3681">3681</a></td></tr
><tr id="gr_svn7768_3682"
><td id="3682"><a href="#3682">3682</a></td></tr
><tr id="gr_svn7768_3683"
><td id="3683"><a href="#3683">3683</a></td></tr
><tr id="gr_svn7768_3684"
><td id="3684"><a href="#3684">3684</a></td></tr
><tr id="gr_svn7768_3685"
><td id="3685"><a href="#3685">3685</a></td></tr
><tr id="gr_svn7768_3686"
><td id="3686"><a href="#3686">3686</a></td></tr
><tr id="gr_svn7768_3687"
><td id="3687"><a href="#3687">3687</a></td></tr
><tr id="gr_svn7768_3688"
><td id="3688"><a href="#3688">3688</a></td></tr
><tr id="gr_svn7768_3689"
><td id="3689"><a href="#3689">3689</a></td></tr
><tr id="gr_svn7768_3690"
><td id="3690"><a href="#3690">3690</a></td></tr
><tr id="gr_svn7768_3691"
><td id="3691"><a href="#3691">3691</a></td></tr
><tr id="gr_svn7768_3692"
><td id="3692"><a href="#3692">3692</a></td></tr
><tr id="gr_svn7768_3693"
><td id="3693"><a href="#3693">3693</a></td></tr
><tr id="gr_svn7768_3694"
><td id="3694"><a href="#3694">3694</a></td></tr
><tr id="gr_svn7768_3695"
><td id="3695"><a href="#3695">3695</a></td></tr
><tr id="gr_svn7768_3696"
><td id="3696"><a href="#3696">3696</a></td></tr
><tr id="gr_svn7768_3697"
><td id="3697"><a href="#3697">3697</a></td></tr
><tr id="gr_svn7768_3698"
><td id="3698"><a href="#3698">3698</a></td></tr
><tr id="gr_svn7768_3699"
><td id="3699"><a href="#3699">3699</a></td></tr
><tr id="gr_svn7768_3700"
><td id="3700"><a href="#3700">3700</a></td></tr
><tr id="gr_svn7768_3701"
><td id="3701"><a href="#3701">3701</a></td></tr
><tr id="gr_svn7768_3702"
><td id="3702"><a href="#3702">3702</a></td></tr
><tr id="gr_svn7768_3703"
><td id="3703"><a href="#3703">3703</a></td></tr
><tr id="gr_svn7768_3704"
><td id="3704"><a href="#3704">3704</a></td></tr
><tr id="gr_svn7768_3705"
><td id="3705"><a href="#3705">3705</a></td></tr
><tr id="gr_svn7768_3706"
><td id="3706"><a href="#3706">3706</a></td></tr
><tr id="gr_svn7768_3707"
><td id="3707"><a href="#3707">3707</a></td></tr
><tr id="gr_svn7768_3708"
><td id="3708"><a href="#3708">3708</a></td></tr
><tr id="gr_svn7768_3709"
><td id="3709"><a href="#3709">3709</a></td></tr
><tr id="gr_svn7768_3710"
><td id="3710"><a href="#3710">3710</a></td></tr
><tr id="gr_svn7768_3711"
><td id="3711"><a href="#3711">3711</a></td></tr
><tr id="gr_svn7768_3712"
><td id="3712"><a href="#3712">3712</a></td></tr
><tr id="gr_svn7768_3713"
><td id="3713"><a href="#3713">3713</a></td></tr
><tr id="gr_svn7768_3714"
><td id="3714"><a href="#3714">3714</a></td></tr
><tr id="gr_svn7768_3715"
><td id="3715"><a href="#3715">3715</a></td></tr
><tr id="gr_svn7768_3716"
><td id="3716"><a href="#3716">3716</a></td></tr
><tr id="gr_svn7768_3717"
><td id="3717"><a href="#3717">3717</a></td></tr
><tr id="gr_svn7768_3718"
><td id="3718"><a href="#3718">3718</a></td></tr
><tr id="gr_svn7768_3719"
><td id="3719"><a href="#3719">3719</a></td></tr
><tr id="gr_svn7768_3720"
><td id="3720"><a href="#3720">3720</a></td></tr
><tr id="gr_svn7768_3721"
><td id="3721"><a href="#3721">3721</a></td></tr
><tr id="gr_svn7768_3722"
><td id="3722"><a href="#3722">3722</a></td></tr
><tr id="gr_svn7768_3723"
><td id="3723"><a href="#3723">3723</a></td></tr
><tr id="gr_svn7768_3724"
><td id="3724"><a href="#3724">3724</a></td></tr
><tr id="gr_svn7768_3725"
><td id="3725"><a href="#3725">3725</a></td></tr
><tr id="gr_svn7768_3726"
><td id="3726"><a href="#3726">3726</a></td></tr
><tr id="gr_svn7768_3727"
><td id="3727"><a href="#3727">3727</a></td></tr
><tr id="gr_svn7768_3728"
><td id="3728"><a href="#3728">3728</a></td></tr
><tr id="gr_svn7768_3729"
><td id="3729"><a href="#3729">3729</a></td></tr
><tr id="gr_svn7768_3730"
><td id="3730"><a href="#3730">3730</a></td></tr
><tr id="gr_svn7768_3731"
><td id="3731"><a href="#3731">3731</a></td></tr
><tr id="gr_svn7768_3732"
><td id="3732"><a href="#3732">3732</a></td></tr
><tr id="gr_svn7768_3733"
><td id="3733"><a href="#3733">3733</a></td></tr
><tr id="gr_svn7768_3734"
><td id="3734"><a href="#3734">3734</a></td></tr
><tr id="gr_svn7768_3735"
><td id="3735"><a href="#3735">3735</a></td></tr
><tr id="gr_svn7768_3736"
><td id="3736"><a href="#3736">3736</a></td></tr
><tr id="gr_svn7768_3737"
><td id="3737"><a href="#3737">3737</a></td></tr
><tr id="gr_svn7768_3738"
><td id="3738"><a href="#3738">3738</a></td></tr
><tr id="gr_svn7768_3739"
><td id="3739"><a href="#3739">3739</a></td></tr
><tr id="gr_svn7768_3740"
><td id="3740"><a href="#3740">3740</a></td></tr
><tr id="gr_svn7768_3741"
><td id="3741"><a href="#3741">3741</a></td></tr
><tr id="gr_svn7768_3742"
><td id="3742"><a href="#3742">3742</a></td></tr
><tr id="gr_svn7768_3743"
><td id="3743"><a href="#3743">3743</a></td></tr
><tr id="gr_svn7768_3744"
><td id="3744"><a href="#3744">3744</a></td></tr
><tr id="gr_svn7768_3745"
><td id="3745"><a href="#3745">3745</a></td></tr
><tr id="gr_svn7768_3746"
><td id="3746"><a href="#3746">3746</a></td></tr
><tr id="gr_svn7768_3747"
><td id="3747"><a href="#3747">3747</a></td></tr
><tr id="gr_svn7768_3748"
><td id="3748"><a href="#3748">3748</a></td></tr
><tr id="gr_svn7768_3749"
><td id="3749"><a href="#3749">3749</a></td></tr
><tr id="gr_svn7768_3750"
><td id="3750"><a href="#3750">3750</a></td></tr
><tr id="gr_svn7768_3751"
><td id="3751"><a href="#3751">3751</a></td></tr
><tr id="gr_svn7768_3752"
><td id="3752"><a href="#3752">3752</a></td></tr
><tr id="gr_svn7768_3753"
><td id="3753"><a href="#3753">3753</a></td></tr
><tr id="gr_svn7768_3754"
><td id="3754"><a href="#3754">3754</a></td></tr
><tr id="gr_svn7768_3755"
><td id="3755"><a href="#3755">3755</a></td></tr
><tr id="gr_svn7768_3756"
><td id="3756"><a href="#3756">3756</a></td></tr
><tr id="gr_svn7768_3757"
><td id="3757"><a href="#3757">3757</a></td></tr
><tr id="gr_svn7768_3758"
><td id="3758"><a href="#3758">3758</a></td></tr
><tr id="gr_svn7768_3759"
><td id="3759"><a href="#3759">3759</a></td></tr
><tr id="gr_svn7768_3760"
><td id="3760"><a href="#3760">3760</a></td></tr
><tr id="gr_svn7768_3761"
><td id="3761"><a href="#3761">3761</a></td></tr
><tr id="gr_svn7768_3762"
><td id="3762"><a href="#3762">3762</a></td></tr
><tr id="gr_svn7768_3763"
><td id="3763"><a href="#3763">3763</a></td></tr
><tr id="gr_svn7768_3764"
><td id="3764"><a href="#3764">3764</a></td></tr
><tr id="gr_svn7768_3765"
><td id="3765"><a href="#3765">3765</a></td></tr
><tr id="gr_svn7768_3766"
><td id="3766"><a href="#3766">3766</a></td></tr
><tr id="gr_svn7768_3767"
><td id="3767"><a href="#3767">3767</a></td></tr
><tr id="gr_svn7768_3768"
><td id="3768"><a href="#3768">3768</a></td></tr
><tr id="gr_svn7768_3769"
><td id="3769"><a href="#3769">3769</a></td></tr
><tr id="gr_svn7768_3770"
><td id="3770"><a href="#3770">3770</a></td></tr
><tr id="gr_svn7768_3771"
><td id="3771"><a href="#3771">3771</a></td></tr
><tr id="gr_svn7768_3772"
><td id="3772"><a href="#3772">3772</a></td></tr
><tr id="gr_svn7768_3773"
><td id="3773"><a href="#3773">3773</a></td></tr
><tr id="gr_svn7768_3774"
><td id="3774"><a href="#3774">3774</a></td></tr
><tr id="gr_svn7768_3775"
><td id="3775"><a href="#3775">3775</a></td></tr
><tr id="gr_svn7768_3776"
><td id="3776"><a href="#3776">3776</a></td></tr
><tr id="gr_svn7768_3777"
><td id="3777"><a href="#3777">3777</a></td></tr
><tr id="gr_svn7768_3778"
><td id="3778"><a href="#3778">3778</a></td></tr
><tr id="gr_svn7768_3779"
><td id="3779"><a href="#3779">3779</a></td></tr
><tr id="gr_svn7768_3780"
><td id="3780"><a href="#3780">3780</a></td></tr
><tr id="gr_svn7768_3781"
><td id="3781"><a href="#3781">3781</a></td></tr
><tr id="gr_svn7768_3782"
><td id="3782"><a href="#3782">3782</a></td></tr
><tr id="gr_svn7768_3783"
><td id="3783"><a href="#3783">3783</a></td></tr
><tr id="gr_svn7768_3784"
><td id="3784"><a href="#3784">3784</a></td></tr
><tr id="gr_svn7768_3785"
><td id="3785"><a href="#3785">3785</a></td></tr
><tr id="gr_svn7768_3786"
><td id="3786"><a href="#3786">3786</a></td></tr
><tr id="gr_svn7768_3787"
><td id="3787"><a href="#3787">3787</a></td></tr
><tr id="gr_svn7768_3788"
><td id="3788"><a href="#3788">3788</a></td></tr
><tr id="gr_svn7768_3789"
><td id="3789"><a href="#3789">3789</a></td></tr
><tr id="gr_svn7768_3790"
><td id="3790"><a href="#3790">3790</a></td></tr
><tr id="gr_svn7768_3791"
><td id="3791"><a href="#3791">3791</a></td></tr
><tr id="gr_svn7768_3792"
><td id="3792"><a href="#3792">3792</a></td></tr
><tr id="gr_svn7768_3793"
><td id="3793"><a href="#3793">3793</a></td></tr
><tr id="gr_svn7768_3794"
><td id="3794"><a href="#3794">3794</a></td></tr
><tr id="gr_svn7768_3795"
><td id="3795"><a href="#3795">3795</a></td></tr
><tr id="gr_svn7768_3796"
><td id="3796"><a href="#3796">3796</a></td></tr
><tr id="gr_svn7768_3797"
><td id="3797"><a href="#3797">3797</a></td></tr
><tr id="gr_svn7768_3798"
><td id="3798"><a href="#3798">3798</a></td></tr
><tr id="gr_svn7768_3799"
><td id="3799"><a href="#3799">3799</a></td></tr
><tr id="gr_svn7768_3800"
><td id="3800"><a href="#3800">3800</a></td></tr
><tr id="gr_svn7768_3801"
><td id="3801"><a href="#3801">3801</a></td></tr
><tr id="gr_svn7768_3802"
><td id="3802"><a href="#3802">3802</a></td></tr
><tr id="gr_svn7768_3803"
><td id="3803"><a href="#3803">3803</a></td></tr
><tr id="gr_svn7768_3804"
><td id="3804"><a href="#3804">3804</a></td></tr
><tr id="gr_svn7768_3805"
><td id="3805"><a href="#3805">3805</a></td></tr
><tr id="gr_svn7768_3806"
><td id="3806"><a href="#3806">3806</a></td></tr
><tr id="gr_svn7768_3807"
><td id="3807"><a href="#3807">3807</a></td></tr
><tr id="gr_svn7768_3808"
><td id="3808"><a href="#3808">3808</a></td></tr
><tr id="gr_svn7768_3809"
><td id="3809"><a href="#3809">3809</a></td></tr
><tr id="gr_svn7768_3810"
><td id="3810"><a href="#3810">3810</a></td></tr
><tr id="gr_svn7768_3811"
><td id="3811"><a href="#3811">3811</a></td></tr
><tr id="gr_svn7768_3812"
><td id="3812"><a href="#3812">3812</a></td></tr
><tr id="gr_svn7768_3813"
><td id="3813"><a href="#3813">3813</a></td></tr
><tr id="gr_svn7768_3814"
><td id="3814"><a href="#3814">3814</a></td></tr
><tr id="gr_svn7768_3815"
><td id="3815"><a href="#3815">3815</a></td></tr
><tr id="gr_svn7768_3816"
><td id="3816"><a href="#3816">3816</a></td></tr
><tr id="gr_svn7768_3817"
><td id="3817"><a href="#3817">3817</a></td></tr
><tr id="gr_svn7768_3818"
><td id="3818"><a href="#3818">3818</a></td></tr
><tr id="gr_svn7768_3819"
><td id="3819"><a href="#3819">3819</a></td></tr
><tr id="gr_svn7768_3820"
><td id="3820"><a href="#3820">3820</a></td></tr
><tr id="gr_svn7768_3821"
><td id="3821"><a href="#3821">3821</a></td></tr
><tr id="gr_svn7768_3822"
><td id="3822"><a href="#3822">3822</a></td></tr
><tr id="gr_svn7768_3823"
><td id="3823"><a href="#3823">3823</a></td></tr
><tr id="gr_svn7768_3824"
><td id="3824"><a href="#3824">3824</a></td></tr
><tr id="gr_svn7768_3825"
><td id="3825"><a href="#3825">3825</a></td></tr
><tr id="gr_svn7768_3826"
><td id="3826"><a href="#3826">3826</a></td></tr
><tr id="gr_svn7768_3827"
><td id="3827"><a href="#3827">3827</a></td></tr
><tr id="gr_svn7768_3828"
><td id="3828"><a href="#3828">3828</a></td></tr
><tr id="gr_svn7768_3829"
><td id="3829"><a href="#3829">3829</a></td></tr
><tr id="gr_svn7768_3830"
><td id="3830"><a href="#3830">3830</a></td></tr
><tr id="gr_svn7768_3831"
><td id="3831"><a href="#3831">3831</a></td></tr
><tr id="gr_svn7768_3832"
><td id="3832"><a href="#3832">3832</a></td></tr
><tr id="gr_svn7768_3833"
><td id="3833"><a href="#3833">3833</a></td></tr
><tr id="gr_svn7768_3834"
><td id="3834"><a href="#3834">3834</a></td></tr
><tr id="gr_svn7768_3835"
><td id="3835"><a href="#3835">3835</a></td></tr
><tr id="gr_svn7768_3836"
><td id="3836"><a href="#3836">3836</a></td></tr
><tr id="gr_svn7768_3837"
><td id="3837"><a href="#3837">3837</a></td></tr
><tr id="gr_svn7768_3838"
><td id="3838"><a href="#3838">3838</a></td></tr
><tr id="gr_svn7768_3839"
><td id="3839"><a href="#3839">3839</a></td></tr
><tr id="gr_svn7768_3840"
><td id="3840"><a href="#3840">3840</a></td></tr
><tr id="gr_svn7768_3841"
><td id="3841"><a href="#3841">3841</a></td></tr
><tr id="gr_svn7768_3842"
><td id="3842"><a href="#3842">3842</a></td></tr
><tr id="gr_svn7768_3843"
><td id="3843"><a href="#3843">3843</a></td></tr
><tr id="gr_svn7768_3844"
><td id="3844"><a href="#3844">3844</a></td></tr
><tr id="gr_svn7768_3845"
><td id="3845"><a href="#3845">3845</a></td></tr
><tr id="gr_svn7768_3846"
><td id="3846"><a href="#3846">3846</a></td></tr
><tr id="gr_svn7768_3847"
><td id="3847"><a href="#3847">3847</a></td></tr
><tr id="gr_svn7768_3848"
><td id="3848"><a href="#3848">3848</a></td></tr
><tr id="gr_svn7768_3849"
><td id="3849"><a href="#3849">3849</a></td></tr
><tr id="gr_svn7768_3850"
><td id="3850"><a href="#3850">3850</a></td></tr
><tr id="gr_svn7768_3851"
><td id="3851"><a href="#3851">3851</a></td></tr
><tr id="gr_svn7768_3852"
><td id="3852"><a href="#3852">3852</a></td></tr
><tr id="gr_svn7768_3853"
><td id="3853"><a href="#3853">3853</a></td></tr
><tr id="gr_svn7768_3854"
><td id="3854"><a href="#3854">3854</a></td></tr
><tr id="gr_svn7768_3855"
><td id="3855"><a href="#3855">3855</a></td></tr
><tr id="gr_svn7768_3856"
><td id="3856"><a href="#3856">3856</a></td></tr
><tr id="gr_svn7768_3857"
><td id="3857"><a href="#3857">3857</a></td></tr
><tr id="gr_svn7768_3858"
><td id="3858"><a href="#3858">3858</a></td></tr
><tr id="gr_svn7768_3859"
><td id="3859"><a href="#3859">3859</a></td></tr
><tr id="gr_svn7768_3860"
><td id="3860"><a href="#3860">3860</a></td></tr
><tr id="gr_svn7768_3861"
><td id="3861"><a href="#3861">3861</a></td></tr
><tr id="gr_svn7768_3862"
><td id="3862"><a href="#3862">3862</a></td></tr
><tr id="gr_svn7768_3863"
><td id="3863"><a href="#3863">3863</a></td></tr
><tr id="gr_svn7768_3864"
><td id="3864"><a href="#3864">3864</a></td></tr
><tr id="gr_svn7768_3865"
><td id="3865"><a href="#3865">3865</a></td></tr
><tr id="gr_svn7768_3866"
><td id="3866"><a href="#3866">3866</a></td></tr
><tr id="gr_svn7768_3867"
><td id="3867"><a href="#3867">3867</a></td></tr
><tr id="gr_svn7768_3868"
><td id="3868"><a href="#3868">3868</a></td></tr
><tr id="gr_svn7768_3869"
><td id="3869"><a href="#3869">3869</a></td></tr
><tr id="gr_svn7768_3870"
><td id="3870"><a href="#3870">3870</a></td></tr
><tr id="gr_svn7768_3871"
><td id="3871"><a href="#3871">3871</a></td></tr
><tr id="gr_svn7768_3872"
><td id="3872"><a href="#3872">3872</a></td></tr
><tr id="gr_svn7768_3873"
><td id="3873"><a href="#3873">3873</a></td></tr
><tr id="gr_svn7768_3874"
><td id="3874"><a href="#3874">3874</a></td></tr
><tr id="gr_svn7768_3875"
><td id="3875"><a href="#3875">3875</a></td></tr
><tr id="gr_svn7768_3876"
><td id="3876"><a href="#3876">3876</a></td></tr
><tr id="gr_svn7768_3877"
><td id="3877"><a href="#3877">3877</a></td></tr
><tr id="gr_svn7768_3878"
><td id="3878"><a href="#3878">3878</a></td></tr
><tr id="gr_svn7768_3879"
><td id="3879"><a href="#3879">3879</a></td></tr
><tr id="gr_svn7768_3880"
><td id="3880"><a href="#3880">3880</a></td></tr
><tr id="gr_svn7768_3881"
><td id="3881"><a href="#3881">3881</a></td></tr
><tr id="gr_svn7768_3882"
><td id="3882"><a href="#3882">3882</a></td></tr
><tr id="gr_svn7768_3883"
><td id="3883"><a href="#3883">3883</a></td></tr
><tr id="gr_svn7768_3884"
><td id="3884"><a href="#3884">3884</a></td></tr
><tr id="gr_svn7768_3885"
><td id="3885"><a href="#3885">3885</a></td></tr
><tr id="gr_svn7768_3886"
><td id="3886"><a href="#3886">3886</a></td></tr
><tr id="gr_svn7768_3887"
><td id="3887"><a href="#3887">3887</a></td></tr
><tr id="gr_svn7768_3888"
><td id="3888"><a href="#3888">3888</a></td></tr
><tr id="gr_svn7768_3889"
><td id="3889"><a href="#3889">3889</a></td></tr
><tr id="gr_svn7768_3890"
><td id="3890"><a href="#3890">3890</a></td></tr
><tr id="gr_svn7768_3891"
><td id="3891"><a href="#3891">3891</a></td></tr
><tr id="gr_svn7768_3892"
><td id="3892"><a href="#3892">3892</a></td></tr
><tr id="gr_svn7768_3893"
><td id="3893"><a href="#3893">3893</a></td></tr
><tr id="gr_svn7768_3894"
><td id="3894"><a href="#3894">3894</a></td></tr
><tr id="gr_svn7768_3895"
><td id="3895"><a href="#3895">3895</a></td></tr
><tr id="gr_svn7768_3896"
><td id="3896"><a href="#3896">3896</a></td></tr
><tr id="gr_svn7768_3897"
><td id="3897"><a href="#3897">3897</a></td></tr
><tr id="gr_svn7768_3898"
><td id="3898"><a href="#3898">3898</a></td></tr
><tr id="gr_svn7768_3899"
><td id="3899"><a href="#3899">3899</a></td></tr
><tr id="gr_svn7768_3900"
><td id="3900"><a href="#3900">3900</a></td></tr
><tr id="gr_svn7768_3901"
><td id="3901"><a href="#3901">3901</a></td></tr
><tr id="gr_svn7768_3902"
><td id="3902"><a href="#3902">3902</a></td></tr
><tr id="gr_svn7768_3903"
><td id="3903"><a href="#3903">3903</a></td></tr
><tr id="gr_svn7768_3904"
><td id="3904"><a href="#3904">3904</a></td></tr
><tr id="gr_svn7768_3905"
><td id="3905"><a href="#3905">3905</a></td></tr
><tr id="gr_svn7768_3906"
><td id="3906"><a href="#3906">3906</a></td></tr
><tr id="gr_svn7768_3907"
><td id="3907"><a href="#3907">3907</a></td></tr
><tr id="gr_svn7768_3908"
><td id="3908"><a href="#3908">3908</a></td></tr
><tr id="gr_svn7768_3909"
><td id="3909"><a href="#3909">3909</a></td></tr
><tr id="gr_svn7768_3910"
><td id="3910"><a href="#3910">3910</a></td></tr
><tr id="gr_svn7768_3911"
><td id="3911"><a href="#3911">3911</a></td></tr
><tr id="gr_svn7768_3912"
><td id="3912"><a href="#3912">3912</a></td></tr
><tr id="gr_svn7768_3913"
><td id="3913"><a href="#3913">3913</a></td></tr
><tr id="gr_svn7768_3914"
><td id="3914"><a href="#3914">3914</a></td></tr
><tr id="gr_svn7768_3915"
><td id="3915"><a href="#3915">3915</a></td></tr
><tr id="gr_svn7768_3916"
><td id="3916"><a href="#3916">3916</a></td></tr
><tr id="gr_svn7768_3917"
><td id="3917"><a href="#3917">3917</a></td></tr
><tr id="gr_svn7768_3918"
><td id="3918"><a href="#3918">3918</a></td></tr
><tr id="gr_svn7768_3919"
><td id="3919"><a href="#3919">3919</a></td></tr
><tr id="gr_svn7768_3920"
><td id="3920"><a href="#3920">3920</a></td></tr
><tr id="gr_svn7768_3921"
><td id="3921"><a href="#3921">3921</a></td></tr
><tr id="gr_svn7768_3922"
><td id="3922"><a href="#3922">3922</a></td></tr
><tr id="gr_svn7768_3923"
><td id="3923"><a href="#3923">3923</a></td></tr
><tr id="gr_svn7768_3924"
><td id="3924"><a href="#3924">3924</a></td></tr
><tr id="gr_svn7768_3925"
><td id="3925"><a href="#3925">3925</a></td></tr
><tr id="gr_svn7768_3926"
><td id="3926"><a href="#3926">3926</a></td></tr
><tr id="gr_svn7768_3927"
><td id="3927"><a href="#3927">3927</a></td></tr
><tr id="gr_svn7768_3928"
><td id="3928"><a href="#3928">3928</a></td></tr
><tr id="gr_svn7768_3929"
><td id="3929"><a href="#3929">3929</a></td></tr
><tr id="gr_svn7768_3930"
><td id="3930"><a href="#3930">3930</a></td></tr
><tr id="gr_svn7768_3931"
><td id="3931"><a href="#3931">3931</a></td></tr
><tr id="gr_svn7768_3932"
><td id="3932"><a href="#3932">3932</a></td></tr
><tr id="gr_svn7768_3933"
><td id="3933"><a href="#3933">3933</a></td></tr
><tr id="gr_svn7768_3934"
><td id="3934"><a href="#3934">3934</a></td></tr
><tr id="gr_svn7768_3935"
><td id="3935"><a href="#3935">3935</a></td></tr
><tr id="gr_svn7768_3936"
><td id="3936"><a href="#3936">3936</a></td></tr
><tr id="gr_svn7768_3937"
><td id="3937"><a href="#3937">3937</a></td></tr
><tr id="gr_svn7768_3938"
><td id="3938"><a href="#3938">3938</a></td></tr
><tr id="gr_svn7768_3939"
><td id="3939"><a href="#3939">3939</a></td></tr
><tr id="gr_svn7768_3940"
><td id="3940"><a href="#3940">3940</a></td></tr
><tr id="gr_svn7768_3941"
><td id="3941"><a href="#3941">3941</a></td></tr
><tr id="gr_svn7768_3942"
><td id="3942"><a href="#3942">3942</a></td></tr
><tr id="gr_svn7768_3943"
><td id="3943"><a href="#3943">3943</a></td></tr
><tr id="gr_svn7768_3944"
><td id="3944"><a href="#3944">3944</a></td></tr
><tr id="gr_svn7768_3945"
><td id="3945"><a href="#3945">3945</a></td></tr
><tr id="gr_svn7768_3946"
><td id="3946"><a href="#3946">3946</a></td></tr
><tr id="gr_svn7768_3947"
><td id="3947"><a href="#3947">3947</a></td></tr
><tr id="gr_svn7768_3948"
><td id="3948"><a href="#3948">3948</a></td></tr
><tr id="gr_svn7768_3949"
><td id="3949"><a href="#3949">3949</a></td></tr
><tr id="gr_svn7768_3950"
><td id="3950"><a href="#3950">3950</a></td></tr
><tr id="gr_svn7768_3951"
><td id="3951"><a href="#3951">3951</a></td></tr
><tr id="gr_svn7768_3952"
><td id="3952"><a href="#3952">3952</a></td></tr
><tr id="gr_svn7768_3953"
><td id="3953"><a href="#3953">3953</a></td></tr
><tr id="gr_svn7768_3954"
><td id="3954"><a href="#3954">3954</a></td></tr
><tr id="gr_svn7768_3955"
><td id="3955"><a href="#3955">3955</a></td></tr
><tr id="gr_svn7768_3956"
><td id="3956"><a href="#3956">3956</a></td></tr
><tr id="gr_svn7768_3957"
><td id="3957"><a href="#3957">3957</a></td></tr
><tr id="gr_svn7768_3958"
><td id="3958"><a href="#3958">3958</a></td></tr
><tr id="gr_svn7768_3959"
><td id="3959"><a href="#3959">3959</a></td></tr
><tr id="gr_svn7768_3960"
><td id="3960"><a href="#3960">3960</a></td></tr
><tr id="gr_svn7768_3961"
><td id="3961"><a href="#3961">3961</a></td></tr
><tr id="gr_svn7768_3962"
><td id="3962"><a href="#3962">3962</a></td></tr
><tr id="gr_svn7768_3963"
><td id="3963"><a href="#3963">3963</a></td></tr
><tr id="gr_svn7768_3964"
><td id="3964"><a href="#3964">3964</a></td></tr
><tr id="gr_svn7768_3965"
><td id="3965"><a href="#3965">3965</a></td></tr
><tr id="gr_svn7768_3966"
><td id="3966"><a href="#3966">3966</a></td></tr
><tr id="gr_svn7768_3967"
><td id="3967"><a href="#3967">3967</a></td></tr
><tr id="gr_svn7768_3968"
><td id="3968"><a href="#3968">3968</a></td></tr
><tr id="gr_svn7768_3969"
><td id="3969"><a href="#3969">3969</a></td></tr
><tr id="gr_svn7768_3970"
><td id="3970"><a href="#3970">3970</a></td></tr
><tr id="gr_svn7768_3971"
><td id="3971"><a href="#3971">3971</a></td></tr
><tr id="gr_svn7768_3972"
><td id="3972"><a href="#3972">3972</a></td></tr
><tr id="gr_svn7768_3973"
><td id="3973"><a href="#3973">3973</a></td></tr
><tr id="gr_svn7768_3974"
><td id="3974"><a href="#3974">3974</a></td></tr
><tr id="gr_svn7768_3975"
><td id="3975"><a href="#3975">3975</a></td></tr
><tr id="gr_svn7768_3976"
><td id="3976"><a href="#3976">3976</a></td></tr
><tr id="gr_svn7768_3977"
><td id="3977"><a href="#3977">3977</a></td></tr
><tr id="gr_svn7768_3978"
><td id="3978"><a href="#3978">3978</a></td></tr
><tr id="gr_svn7768_3979"
><td id="3979"><a href="#3979">3979</a></td></tr
><tr id="gr_svn7768_3980"
><td id="3980"><a href="#3980">3980</a></td></tr
><tr id="gr_svn7768_3981"
><td id="3981"><a href="#3981">3981</a></td></tr
><tr id="gr_svn7768_3982"
><td id="3982"><a href="#3982">3982</a></td></tr
><tr id="gr_svn7768_3983"
><td id="3983"><a href="#3983">3983</a></td></tr
><tr id="gr_svn7768_3984"
><td id="3984"><a href="#3984">3984</a></td></tr
><tr id="gr_svn7768_3985"
><td id="3985"><a href="#3985">3985</a></td></tr
><tr id="gr_svn7768_3986"
><td id="3986"><a href="#3986">3986</a></td></tr
><tr id="gr_svn7768_3987"
><td id="3987"><a href="#3987">3987</a></td></tr
><tr id="gr_svn7768_3988"
><td id="3988"><a href="#3988">3988</a></td></tr
><tr id="gr_svn7768_3989"
><td id="3989"><a href="#3989">3989</a></td></tr
><tr id="gr_svn7768_3990"
><td id="3990"><a href="#3990">3990</a></td></tr
><tr id="gr_svn7768_3991"
><td id="3991"><a href="#3991">3991</a></td></tr
><tr id="gr_svn7768_3992"
><td id="3992"><a href="#3992">3992</a></td></tr
><tr id="gr_svn7768_3993"
><td id="3993"><a href="#3993">3993</a></td></tr
><tr id="gr_svn7768_3994"
><td id="3994"><a href="#3994">3994</a></td></tr
><tr id="gr_svn7768_3995"
><td id="3995"><a href="#3995">3995</a></td></tr
><tr id="gr_svn7768_3996"
><td id="3996"><a href="#3996">3996</a></td></tr
><tr id="gr_svn7768_3997"
><td id="3997"><a href="#3997">3997</a></td></tr
><tr id="gr_svn7768_3998"
><td id="3998"><a href="#3998">3998</a></td></tr
><tr id="gr_svn7768_3999"
><td id="3999"><a href="#3999">3999</a></td></tr
><tr id="gr_svn7768_4000"
><td id="4000"><a href="#4000">4000</a></td></tr
><tr id="gr_svn7768_4001"
><td id="4001"><a href="#4001">4001</a></td></tr
><tr id="gr_svn7768_4002"
><td id="4002"><a href="#4002">4002</a></td></tr
><tr id="gr_svn7768_4003"
><td id="4003"><a href="#4003">4003</a></td></tr
><tr id="gr_svn7768_4004"
><td id="4004"><a href="#4004">4004</a></td></tr
><tr id="gr_svn7768_4005"
><td id="4005"><a href="#4005">4005</a></td></tr
><tr id="gr_svn7768_4006"
><td id="4006"><a href="#4006">4006</a></td></tr
><tr id="gr_svn7768_4007"
><td id="4007"><a href="#4007">4007</a></td></tr
><tr id="gr_svn7768_4008"
><td id="4008"><a href="#4008">4008</a></td></tr
><tr id="gr_svn7768_4009"
><td id="4009"><a href="#4009">4009</a></td></tr
><tr id="gr_svn7768_4010"
><td id="4010"><a href="#4010">4010</a></td></tr
><tr id="gr_svn7768_4011"
><td id="4011"><a href="#4011">4011</a></td></tr
><tr id="gr_svn7768_4012"
><td id="4012"><a href="#4012">4012</a></td></tr
><tr id="gr_svn7768_4013"
><td id="4013"><a href="#4013">4013</a></td></tr
><tr id="gr_svn7768_4014"
><td id="4014"><a href="#4014">4014</a></td></tr
><tr id="gr_svn7768_4015"
><td id="4015"><a href="#4015">4015</a></td></tr
><tr id="gr_svn7768_4016"
><td id="4016"><a href="#4016">4016</a></td></tr
><tr id="gr_svn7768_4017"
><td id="4017"><a href="#4017">4017</a></td></tr
><tr id="gr_svn7768_4018"
><td id="4018"><a href="#4018">4018</a></td></tr
><tr id="gr_svn7768_4019"
><td id="4019"><a href="#4019">4019</a></td></tr
><tr id="gr_svn7768_4020"
><td id="4020"><a href="#4020">4020</a></td></tr
><tr id="gr_svn7768_4021"
><td id="4021"><a href="#4021">4021</a></td></tr
><tr id="gr_svn7768_4022"
><td id="4022"><a href="#4022">4022</a></td></tr
><tr id="gr_svn7768_4023"
><td id="4023"><a href="#4023">4023</a></td></tr
><tr id="gr_svn7768_4024"
><td id="4024"><a href="#4024">4024</a></td></tr
><tr id="gr_svn7768_4025"
><td id="4025"><a href="#4025">4025</a></td></tr
><tr id="gr_svn7768_4026"
><td id="4026"><a href="#4026">4026</a></td></tr
><tr id="gr_svn7768_4027"
><td id="4027"><a href="#4027">4027</a></td></tr
><tr id="gr_svn7768_4028"
><td id="4028"><a href="#4028">4028</a></td></tr
><tr id="gr_svn7768_4029"
><td id="4029"><a href="#4029">4029</a></td></tr
><tr id="gr_svn7768_4030"
><td id="4030"><a href="#4030">4030</a></td></tr
><tr id="gr_svn7768_4031"
><td id="4031"><a href="#4031">4031</a></td></tr
><tr id="gr_svn7768_4032"
><td id="4032"><a href="#4032">4032</a></td></tr
><tr id="gr_svn7768_4033"
><td id="4033"><a href="#4033">4033</a></td></tr
><tr id="gr_svn7768_4034"
><td id="4034"><a href="#4034">4034</a></td></tr
><tr id="gr_svn7768_4035"
><td id="4035"><a href="#4035">4035</a></td></tr
><tr id="gr_svn7768_4036"
><td id="4036"><a href="#4036">4036</a></td></tr
><tr id="gr_svn7768_4037"
><td id="4037"><a href="#4037">4037</a></td></tr
><tr id="gr_svn7768_4038"
><td id="4038"><a href="#4038">4038</a></td></tr
><tr id="gr_svn7768_4039"
><td id="4039"><a href="#4039">4039</a></td></tr
><tr id="gr_svn7768_4040"
><td id="4040"><a href="#4040">4040</a></td></tr
><tr id="gr_svn7768_4041"
><td id="4041"><a href="#4041">4041</a></td></tr
><tr id="gr_svn7768_4042"
><td id="4042"><a href="#4042">4042</a></td></tr
><tr id="gr_svn7768_4043"
><td id="4043"><a href="#4043">4043</a></td></tr
><tr id="gr_svn7768_4044"
><td id="4044"><a href="#4044">4044</a></td></tr
><tr id="gr_svn7768_4045"
><td id="4045"><a href="#4045">4045</a></td></tr
><tr id="gr_svn7768_4046"
><td id="4046"><a href="#4046">4046</a></td></tr
><tr id="gr_svn7768_4047"
><td id="4047"><a href="#4047">4047</a></td></tr
><tr id="gr_svn7768_4048"
><td id="4048"><a href="#4048">4048</a></td></tr
><tr id="gr_svn7768_4049"
><td id="4049"><a href="#4049">4049</a></td></tr
><tr id="gr_svn7768_4050"
><td id="4050"><a href="#4050">4050</a></td></tr
><tr id="gr_svn7768_4051"
><td id="4051"><a href="#4051">4051</a></td></tr
><tr id="gr_svn7768_4052"
><td id="4052"><a href="#4052">4052</a></td></tr
><tr id="gr_svn7768_4053"
><td id="4053"><a href="#4053">4053</a></td></tr
><tr id="gr_svn7768_4054"
><td id="4054"><a href="#4054">4054</a></td></tr
><tr id="gr_svn7768_4055"
><td id="4055"><a href="#4055">4055</a></td></tr
><tr id="gr_svn7768_4056"
><td id="4056"><a href="#4056">4056</a></td></tr
><tr id="gr_svn7768_4057"
><td id="4057"><a href="#4057">4057</a></td></tr
><tr id="gr_svn7768_4058"
><td id="4058"><a href="#4058">4058</a></td></tr
><tr id="gr_svn7768_4059"
><td id="4059"><a href="#4059">4059</a></td></tr
><tr id="gr_svn7768_4060"
><td id="4060"><a href="#4060">4060</a></td></tr
><tr id="gr_svn7768_4061"
><td id="4061"><a href="#4061">4061</a></td></tr
><tr id="gr_svn7768_4062"
><td id="4062"><a href="#4062">4062</a></td></tr
><tr id="gr_svn7768_4063"
><td id="4063"><a href="#4063">4063</a></td></tr
><tr id="gr_svn7768_4064"
><td id="4064"><a href="#4064">4064</a></td></tr
><tr id="gr_svn7768_4065"
><td id="4065"><a href="#4065">4065</a></td></tr
><tr id="gr_svn7768_4066"
><td id="4066"><a href="#4066">4066</a></td></tr
><tr id="gr_svn7768_4067"
><td id="4067"><a href="#4067">4067</a></td></tr
><tr id="gr_svn7768_4068"
><td id="4068"><a href="#4068">4068</a></td></tr
><tr id="gr_svn7768_4069"
><td id="4069"><a href="#4069">4069</a></td></tr
><tr id="gr_svn7768_4070"
><td id="4070"><a href="#4070">4070</a></td></tr
><tr id="gr_svn7768_4071"
><td id="4071"><a href="#4071">4071</a></td></tr
><tr id="gr_svn7768_4072"
><td id="4072"><a href="#4072">4072</a></td></tr
><tr id="gr_svn7768_4073"
><td id="4073"><a href="#4073">4073</a></td></tr
><tr id="gr_svn7768_4074"
><td id="4074"><a href="#4074">4074</a></td></tr
><tr id="gr_svn7768_4075"
><td id="4075"><a href="#4075">4075</a></td></tr
><tr id="gr_svn7768_4076"
><td id="4076"><a href="#4076">4076</a></td></tr
><tr id="gr_svn7768_4077"
><td id="4077"><a href="#4077">4077</a></td></tr
><tr id="gr_svn7768_4078"
><td id="4078"><a href="#4078">4078</a></td></tr
><tr id="gr_svn7768_4079"
><td id="4079"><a href="#4079">4079</a></td></tr
><tr id="gr_svn7768_4080"
><td id="4080"><a href="#4080">4080</a></td></tr
><tr id="gr_svn7768_4081"
><td id="4081"><a href="#4081">4081</a></td></tr
><tr id="gr_svn7768_4082"
><td id="4082"><a href="#4082">4082</a></td></tr
><tr id="gr_svn7768_4083"
><td id="4083"><a href="#4083">4083</a></td></tr
><tr id="gr_svn7768_4084"
><td id="4084"><a href="#4084">4084</a></td></tr
><tr id="gr_svn7768_4085"
><td id="4085"><a href="#4085">4085</a></td></tr
><tr id="gr_svn7768_4086"
><td id="4086"><a href="#4086">4086</a></td></tr
><tr id="gr_svn7768_4087"
><td id="4087"><a href="#4087">4087</a></td></tr
><tr id="gr_svn7768_4088"
><td id="4088"><a href="#4088">4088</a></td></tr
><tr id="gr_svn7768_4089"
><td id="4089"><a href="#4089">4089</a></td></tr
><tr id="gr_svn7768_4090"
><td id="4090"><a href="#4090">4090</a></td></tr
><tr id="gr_svn7768_4091"
><td id="4091"><a href="#4091">4091</a></td></tr
><tr id="gr_svn7768_4092"
><td id="4092"><a href="#4092">4092</a></td></tr
><tr id="gr_svn7768_4093"
><td id="4093"><a href="#4093">4093</a></td></tr
><tr id="gr_svn7768_4094"
><td id="4094"><a href="#4094">4094</a></td></tr
><tr id="gr_svn7768_4095"
><td id="4095"><a href="#4095">4095</a></td></tr
><tr id="gr_svn7768_4096"
><td id="4096"><a href="#4096">4096</a></td></tr
><tr id="gr_svn7768_4097"
><td id="4097"><a href="#4097">4097</a></td></tr
><tr id="gr_svn7768_4098"
><td id="4098"><a href="#4098">4098</a></td></tr
><tr id="gr_svn7768_4099"
><td id="4099"><a href="#4099">4099</a></td></tr
><tr id="gr_svn7768_4100"
><td id="4100"><a href="#4100">4100</a></td></tr
><tr id="gr_svn7768_4101"
><td id="4101"><a href="#4101">4101</a></td></tr
><tr id="gr_svn7768_4102"
><td id="4102"><a href="#4102">4102</a></td></tr
><tr id="gr_svn7768_4103"
><td id="4103"><a href="#4103">4103</a></td></tr
><tr id="gr_svn7768_4104"
><td id="4104"><a href="#4104">4104</a></td></tr
><tr id="gr_svn7768_4105"
><td id="4105"><a href="#4105">4105</a></td></tr
><tr id="gr_svn7768_4106"
><td id="4106"><a href="#4106">4106</a></td></tr
><tr id="gr_svn7768_4107"
><td id="4107"><a href="#4107">4107</a></td></tr
><tr id="gr_svn7768_4108"
><td id="4108"><a href="#4108">4108</a></td></tr
><tr id="gr_svn7768_4109"
><td id="4109"><a href="#4109">4109</a></td></tr
><tr id="gr_svn7768_4110"
><td id="4110"><a href="#4110">4110</a></td></tr
><tr id="gr_svn7768_4111"
><td id="4111"><a href="#4111">4111</a></td></tr
><tr id="gr_svn7768_4112"
><td id="4112"><a href="#4112">4112</a></td></tr
><tr id="gr_svn7768_4113"
><td id="4113"><a href="#4113">4113</a></td></tr
><tr id="gr_svn7768_4114"
><td id="4114"><a href="#4114">4114</a></td></tr
><tr id="gr_svn7768_4115"
><td id="4115"><a href="#4115">4115</a></td></tr
><tr id="gr_svn7768_4116"
><td id="4116"><a href="#4116">4116</a></td></tr
><tr id="gr_svn7768_4117"
><td id="4117"><a href="#4117">4117</a></td></tr
><tr id="gr_svn7768_4118"
><td id="4118"><a href="#4118">4118</a></td></tr
><tr id="gr_svn7768_4119"
><td id="4119"><a href="#4119">4119</a></td></tr
><tr id="gr_svn7768_4120"
><td id="4120"><a href="#4120">4120</a></td></tr
><tr id="gr_svn7768_4121"
><td id="4121"><a href="#4121">4121</a></td></tr
><tr id="gr_svn7768_4122"
><td id="4122"><a href="#4122">4122</a></td></tr
><tr id="gr_svn7768_4123"
><td id="4123"><a href="#4123">4123</a></td></tr
><tr id="gr_svn7768_4124"
><td id="4124"><a href="#4124">4124</a></td></tr
><tr id="gr_svn7768_4125"
><td id="4125"><a href="#4125">4125</a></td></tr
><tr id="gr_svn7768_4126"
><td id="4126"><a href="#4126">4126</a></td></tr
><tr id="gr_svn7768_4127"
><td id="4127"><a href="#4127">4127</a></td></tr
><tr id="gr_svn7768_4128"
><td id="4128"><a href="#4128">4128</a></td></tr
><tr id="gr_svn7768_4129"
><td id="4129"><a href="#4129">4129</a></td></tr
><tr id="gr_svn7768_4130"
><td id="4130"><a href="#4130">4130</a></td></tr
><tr id="gr_svn7768_4131"
><td id="4131"><a href="#4131">4131</a></td></tr
><tr id="gr_svn7768_4132"
><td id="4132"><a href="#4132">4132</a></td></tr
><tr id="gr_svn7768_4133"
><td id="4133"><a href="#4133">4133</a></td></tr
><tr id="gr_svn7768_4134"
><td id="4134"><a href="#4134">4134</a></td></tr
><tr id="gr_svn7768_4135"
><td id="4135"><a href="#4135">4135</a></td></tr
><tr id="gr_svn7768_4136"
><td id="4136"><a href="#4136">4136</a></td></tr
><tr id="gr_svn7768_4137"
><td id="4137"><a href="#4137">4137</a></td></tr
><tr id="gr_svn7768_4138"
><td id="4138"><a href="#4138">4138</a></td></tr
><tr id="gr_svn7768_4139"
><td id="4139"><a href="#4139">4139</a></td></tr
><tr id="gr_svn7768_4140"
><td id="4140"><a href="#4140">4140</a></td></tr
><tr id="gr_svn7768_4141"
><td id="4141"><a href="#4141">4141</a></td></tr
><tr id="gr_svn7768_4142"
><td id="4142"><a href="#4142">4142</a></td></tr
><tr id="gr_svn7768_4143"
><td id="4143"><a href="#4143">4143</a></td></tr
><tr id="gr_svn7768_4144"
><td id="4144"><a href="#4144">4144</a></td></tr
><tr id="gr_svn7768_4145"
><td id="4145"><a href="#4145">4145</a></td></tr
><tr id="gr_svn7768_4146"
><td id="4146"><a href="#4146">4146</a></td></tr
><tr id="gr_svn7768_4147"
><td id="4147"><a href="#4147">4147</a></td></tr
><tr id="gr_svn7768_4148"
><td id="4148"><a href="#4148">4148</a></td></tr
><tr id="gr_svn7768_4149"
><td id="4149"><a href="#4149">4149</a></td></tr
><tr id="gr_svn7768_4150"
><td id="4150"><a href="#4150">4150</a></td></tr
><tr id="gr_svn7768_4151"
><td id="4151"><a href="#4151">4151</a></td></tr
><tr id="gr_svn7768_4152"
><td id="4152"><a href="#4152">4152</a></td></tr
><tr id="gr_svn7768_4153"
><td id="4153"><a href="#4153">4153</a></td></tr
><tr id="gr_svn7768_4154"
><td id="4154"><a href="#4154">4154</a></td></tr
><tr id="gr_svn7768_4155"
><td id="4155"><a href="#4155">4155</a></td></tr
><tr id="gr_svn7768_4156"
><td id="4156"><a href="#4156">4156</a></td></tr
><tr id="gr_svn7768_4157"
><td id="4157"><a href="#4157">4157</a></td></tr
><tr id="gr_svn7768_4158"
><td id="4158"><a href="#4158">4158</a></td></tr
><tr id="gr_svn7768_4159"
><td id="4159"><a href="#4159">4159</a></td></tr
><tr id="gr_svn7768_4160"
><td id="4160"><a href="#4160">4160</a></td></tr
><tr id="gr_svn7768_4161"
><td id="4161"><a href="#4161">4161</a></td></tr
><tr id="gr_svn7768_4162"
><td id="4162"><a href="#4162">4162</a></td></tr
><tr id="gr_svn7768_4163"
><td id="4163"><a href="#4163">4163</a></td></tr
><tr id="gr_svn7768_4164"
><td id="4164"><a href="#4164">4164</a></td></tr
><tr id="gr_svn7768_4165"
><td id="4165"><a href="#4165">4165</a></td></tr
><tr id="gr_svn7768_4166"
><td id="4166"><a href="#4166">4166</a></td></tr
><tr id="gr_svn7768_4167"
><td id="4167"><a href="#4167">4167</a></td></tr
><tr id="gr_svn7768_4168"
><td id="4168"><a href="#4168">4168</a></td></tr
><tr id="gr_svn7768_4169"
><td id="4169"><a href="#4169">4169</a></td></tr
><tr id="gr_svn7768_4170"
><td id="4170"><a href="#4170">4170</a></td></tr
><tr id="gr_svn7768_4171"
><td id="4171"><a href="#4171">4171</a></td></tr
><tr id="gr_svn7768_4172"
><td id="4172"><a href="#4172">4172</a></td></tr
><tr id="gr_svn7768_4173"
><td id="4173"><a href="#4173">4173</a></td></tr
><tr id="gr_svn7768_4174"
><td id="4174"><a href="#4174">4174</a></td></tr
><tr id="gr_svn7768_4175"
><td id="4175"><a href="#4175">4175</a></td></tr
><tr id="gr_svn7768_4176"
><td id="4176"><a href="#4176">4176</a></td></tr
><tr id="gr_svn7768_4177"
><td id="4177"><a href="#4177">4177</a></td></tr
><tr id="gr_svn7768_4178"
><td id="4178"><a href="#4178">4178</a></td></tr
><tr id="gr_svn7768_4179"
><td id="4179"><a href="#4179">4179</a></td></tr
><tr id="gr_svn7768_4180"
><td id="4180"><a href="#4180">4180</a></td></tr
><tr id="gr_svn7768_4181"
><td id="4181"><a href="#4181">4181</a></td></tr
><tr id="gr_svn7768_4182"
><td id="4182"><a href="#4182">4182</a></td></tr
><tr id="gr_svn7768_4183"
><td id="4183"><a href="#4183">4183</a></td></tr
><tr id="gr_svn7768_4184"
><td id="4184"><a href="#4184">4184</a></td></tr
><tr id="gr_svn7768_4185"
><td id="4185"><a href="#4185">4185</a></td></tr
><tr id="gr_svn7768_4186"
><td id="4186"><a href="#4186">4186</a></td></tr
><tr id="gr_svn7768_4187"
><td id="4187"><a href="#4187">4187</a></td></tr
><tr id="gr_svn7768_4188"
><td id="4188"><a href="#4188">4188</a></td></tr
><tr id="gr_svn7768_4189"
><td id="4189"><a href="#4189">4189</a></td></tr
><tr id="gr_svn7768_4190"
><td id="4190"><a href="#4190">4190</a></td></tr
><tr id="gr_svn7768_4191"
><td id="4191"><a href="#4191">4191</a></td></tr
><tr id="gr_svn7768_4192"
><td id="4192"><a href="#4192">4192</a></td></tr
><tr id="gr_svn7768_4193"
><td id="4193"><a href="#4193">4193</a></td></tr
><tr id="gr_svn7768_4194"
><td id="4194"><a href="#4194">4194</a></td></tr
><tr id="gr_svn7768_4195"
><td id="4195"><a href="#4195">4195</a></td></tr
><tr id="gr_svn7768_4196"
><td id="4196"><a href="#4196">4196</a></td></tr
><tr id="gr_svn7768_4197"
><td id="4197"><a href="#4197">4197</a></td></tr
><tr id="gr_svn7768_4198"
><td id="4198"><a href="#4198">4198</a></td></tr
><tr id="gr_svn7768_4199"
><td id="4199"><a href="#4199">4199</a></td></tr
><tr id="gr_svn7768_4200"
><td id="4200"><a href="#4200">4200</a></td></tr
><tr id="gr_svn7768_4201"
><td id="4201"><a href="#4201">4201</a></td></tr
><tr id="gr_svn7768_4202"
><td id="4202"><a href="#4202">4202</a></td></tr
><tr id="gr_svn7768_4203"
><td id="4203"><a href="#4203">4203</a></td></tr
><tr id="gr_svn7768_4204"
><td id="4204"><a href="#4204">4204</a></td></tr
><tr id="gr_svn7768_4205"
><td id="4205"><a href="#4205">4205</a></td></tr
><tr id="gr_svn7768_4206"
><td id="4206"><a href="#4206">4206</a></td></tr
><tr id="gr_svn7768_4207"
><td id="4207"><a href="#4207">4207</a></td></tr
><tr id="gr_svn7768_4208"
><td id="4208"><a href="#4208">4208</a></td></tr
><tr id="gr_svn7768_4209"
><td id="4209"><a href="#4209">4209</a></td></tr
><tr id="gr_svn7768_4210"
><td id="4210"><a href="#4210">4210</a></td></tr
><tr id="gr_svn7768_4211"
><td id="4211"><a href="#4211">4211</a></td></tr
><tr id="gr_svn7768_4212"
><td id="4212"><a href="#4212">4212</a></td></tr
><tr id="gr_svn7768_4213"
><td id="4213"><a href="#4213">4213</a></td></tr
><tr id="gr_svn7768_4214"
><td id="4214"><a href="#4214">4214</a></td></tr
><tr id="gr_svn7768_4215"
><td id="4215"><a href="#4215">4215</a></td></tr
><tr id="gr_svn7768_4216"
><td id="4216"><a href="#4216">4216</a></td></tr
><tr id="gr_svn7768_4217"
><td id="4217"><a href="#4217">4217</a></td></tr
><tr id="gr_svn7768_4218"
><td id="4218"><a href="#4218">4218</a></td></tr
><tr id="gr_svn7768_4219"
><td id="4219"><a href="#4219">4219</a></td></tr
><tr id="gr_svn7768_4220"
><td id="4220"><a href="#4220">4220</a></td></tr
><tr id="gr_svn7768_4221"
><td id="4221"><a href="#4221">4221</a></td></tr
><tr id="gr_svn7768_4222"
><td id="4222"><a href="#4222">4222</a></td></tr
><tr id="gr_svn7768_4223"
><td id="4223"><a href="#4223">4223</a></td></tr
><tr id="gr_svn7768_4224"
><td id="4224"><a href="#4224">4224</a></td></tr
><tr id="gr_svn7768_4225"
><td id="4225"><a href="#4225">4225</a></td></tr
><tr id="gr_svn7768_4226"
><td id="4226"><a href="#4226">4226</a></td></tr
><tr id="gr_svn7768_4227"
><td id="4227"><a href="#4227">4227</a></td></tr
><tr id="gr_svn7768_4228"
><td id="4228"><a href="#4228">4228</a></td></tr
><tr id="gr_svn7768_4229"
><td id="4229"><a href="#4229">4229</a></td></tr
><tr id="gr_svn7768_4230"
><td id="4230"><a href="#4230">4230</a></td></tr
><tr id="gr_svn7768_4231"
><td id="4231"><a href="#4231">4231</a></td></tr
><tr id="gr_svn7768_4232"
><td id="4232"><a href="#4232">4232</a></td></tr
><tr id="gr_svn7768_4233"
><td id="4233"><a href="#4233">4233</a></td></tr
><tr id="gr_svn7768_4234"
><td id="4234"><a href="#4234">4234</a></td></tr
><tr id="gr_svn7768_4235"
><td id="4235"><a href="#4235">4235</a></td></tr
><tr id="gr_svn7768_4236"
><td id="4236"><a href="#4236">4236</a></td></tr
><tr id="gr_svn7768_4237"
><td id="4237"><a href="#4237">4237</a></td></tr
><tr id="gr_svn7768_4238"
><td id="4238"><a href="#4238">4238</a></td></tr
><tr id="gr_svn7768_4239"
><td id="4239"><a href="#4239">4239</a></td></tr
><tr id="gr_svn7768_4240"
><td id="4240"><a href="#4240">4240</a></td></tr
><tr id="gr_svn7768_4241"
><td id="4241"><a href="#4241">4241</a></td></tr
><tr id="gr_svn7768_4242"
><td id="4242"><a href="#4242">4242</a></td></tr
><tr id="gr_svn7768_4243"
><td id="4243"><a href="#4243">4243</a></td></tr
><tr id="gr_svn7768_4244"
><td id="4244"><a href="#4244">4244</a></td></tr
><tr id="gr_svn7768_4245"
><td id="4245"><a href="#4245">4245</a></td></tr
><tr id="gr_svn7768_4246"
><td id="4246"><a href="#4246">4246</a></td></tr
><tr id="gr_svn7768_4247"
><td id="4247"><a href="#4247">4247</a></td></tr
><tr id="gr_svn7768_4248"
><td id="4248"><a href="#4248">4248</a></td></tr
><tr id="gr_svn7768_4249"
><td id="4249"><a href="#4249">4249</a></td></tr
><tr id="gr_svn7768_4250"
><td id="4250"><a href="#4250">4250</a></td></tr
><tr id="gr_svn7768_4251"
><td id="4251"><a href="#4251">4251</a></td></tr
><tr id="gr_svn7768_4252"
><td id="4252"><a href="#4252">4252</a></td></tr
><tr id="gr_svn7768_4253"
><td id="4253"><a href="#4253">4253</a></td></tr
><tr id="gr_svn7768_4254"
><td id="4254"><a href="#4254">4254</a></td></tr
><tr id="gr_svn7768_4255"
><td id="4255"><a href="#4255">4255</a></td></tr
><tr id="gr_svn7768_4256"
><td id="4256"><a href="#4256">4256</a></td></tr
><tr id="gr_svn7768_4257"
><td id="4257"><a href="#4257">4257</a></td></tr
><tr id="gr_svn7768_4258"
><td id="4258"><a href="#4258">4258</a></td></tr
><tr id="gr_svn7768_4259"
><td id="4259"><a href="#4259">4259</a></td></tr
><tr id="gr_svn7768_4260"
><td id="4260"><a href="#4260">4260</a></td></tr
><tr id="gr_svn7768_4261"
><td id="4261"><a href="#4261">4261</a></td></tr
><tr id="gr_svn7768_4262"
><td id="4262"><a href="#4262">4262</a></td></tr
><tr id="gr_svn7768_4263"
><td id="4263"><a href="#4263">4263</a></td></tr
><tr id="gr_svn7768_4264"
><td id="4264"><a href="#4264">4264</a></td></tr
><tr id="gr_svn7768_4265"
><td id="4265"><a href="#4265">4265</a></td></tr
><tr id="gr_svn7768_4266"
><td id="4266"><a href="#4266">4266</a></td></tr
><tr id="gr_svn7768_4267"
><td id="4267"><a href="#4267">4267</a></td></tr
><tr id="gr_svn7768_4268"
><td id="4268"><a href="#4268">4268</a></td></tr
><tr id="gr_svn7768_4269"
><td id="4269"><a href="#4269">4269</a></td></tr
><tr id="gr_svn7768_4270"
><td id="4270"><a href="#4270">4270</a></td></tr
><tr id="gr_svn7768_4271"
><td id="4271"><a href="#4271">4271</a></td></tr
><tr id="gr_svn7768_4272"
><td id="4272"><a href="#4272">4272</a></td></tr
><tr id="gr_svn7768_4273"
><td id="4273"><a href="#4273">4273</a></td></tr
><tr id="gr_svn7768_4274"
><td id="4274"><a href="#4274">4274</a></td></tr
><tr id="gr_svn7768_4275"
><td id="4275"><a href="#4275">4275</a></td></tr
><tr id="gr_svn7768_4276"
><td id="4276"><a href="#4276">4276</a></td></tr
><tr id="gr_svn7768_4277"
><td id="4277"><a href="#4277">4277</a></td></tr
><tr id="gr_svn7768_4278"
><td id="4278"><a href="#4278">4278</a></td></tr
><tr id="gr_svn7768_4279"
><td id="4279"><a href="#4279">4279</a></td></tr
><tr id="gr_svn7768_4280"
><td id="4280"><a href="#4280">4280</a></td></tr
><tr id="gr_svn7768_4281"
><td id="4281"><a href="#4281">4281</a></td></tr
><tr id="gr_svn7768_4282"
><td id="4282"><a href="#4282">4282</a></td></tr
><tr id="gr_svn7768_4283"
><td id="4283"><a href="#4283">4283</a></td></tr
><tr id="gr_svn7768_4284"
><td id="4284"><a href="#4284">4284</a></td></tr
><tr id="gr_svn7768_4285"
><td id="4285"><a href="#4285">4285</a></td></tr
><tr id="gr_svn7768_4286"
><td id="4286"><a href="#4286">4286</a></td></tr
><tr id="gr_svn7768_4287"
><td id="4287"><a href="#4287">4287</a></td></tr
><tr id="gr_svn7768_4288"
><td id="4288"><a href="#4288">4288</a></td></tr
><tr id="gr_svn7768_4289"
><td id="4289"><a href="#4289">4289</a></td></tr
><tr id="gr_svn7768_4290"
><td id="4290"><a href="#4290">4290</a></td></tr
><tr id="gr_svn7768_4291"
><td id="4291"><a href="#4291">4291</a></td></tr
><tr id="gr_svn7768_4292"
><td id="4292"><a href="#4292">4292</a></td></tr
><tr id="gr_svn7768_4293"
><td id="4293"><a href="#4293">4293</a></td></tr
><tr id="gr_svn7768_4294"
><td id="4294"><a href="#4294">4294</a></td></tr
><tr id="gr_svn7768_4295"
><td id="4295"><a href="#4295">4295</a></td></tr
><tr id="gr_svn7768_4296"
><td id="4296"><a href="#4296">4296</a></td></tr
><tr id="gr_svn7768_4297"
><td id="4297"><a href="#4297">4297</a></td></tr
><tr id="gr_svn7768_4298"
><td id="4298"><a href="#4298">4298</a></td></tr
><tr id="gr_svn7768_4299"
><td id="4299"><a href="#4299">4299</a></td></tr
><tr id="gr_svn7768_4300"
><td id="4300"><a href="#4300">4300</a></td></tr
><tr id="gr_svn7768_4301"
><td id="4301"><a href="#4301">4301</a></td></tr
><tr id="gr_svn7768_4302"
><td id="4302"><a href="#4302">4302</a></td></tr
><tr id="gr_svn7768_4303"
><td id="4303"><a href="#4303">4303</a></td></tr
><tr id="gr_svn7768_4304"
><td id="4304"><a href="#4304">4304</a></td></tr
><tr id="gr_svn7768_4305"
><td id="4305"><a href="#4305">4305</a></td></tr
><tr id="gr_svn7768_4306"
><td id="4306"><a href="#4306">4306</a></td></tr
><tr id="gr_svn7768_4307"
><td id="4307"><a href="#4307">4307</a></td></tr
><tr id="gr_svn7768_4308"
><td id="4308"><a href="#4308">4308</a></td></tr
><tr id="gr_svn7768_4309"
><td id="4309"><a href="#4309">4309</a></td></tr
><tr id="gr_svn7768_4310"
><td id="4310"><a href="#4310">4310</a></td></tr
><tr id="gr_svn7768_4311"
><td id="4311"><a href="#4311">4311</a></td></tr
><tr id="gr_svn7768_4312"
><td id="4312"><a href="#4312">4312</a></td></tr
><tr id="gr_svn7768_4313"
><td id="4313"><a href="#4313">4313</a></td></tr
><tr id="gr_svn7768_4314"
><td id="4314"><a href="#4314">4314</a></td></tr
><tr id="gr_svn7768_4315"
><td id="4315"><a href="#4315">4315</a></td></tr
><tr id="gr_svn7768_4316"
><td id="4316"><a href="#4316">4316</a></td></tr
><tr id="gr_svn7768_4317"
><td id="4317"><a href="#4317">4317</a></td></tr
><tr id="gr_svn7768_4318"
><td id="4318"><a href="#4318">4318</a></td></tr
><tr id="gr_svn7768_4319"
><td id="4319"><a href="#4319">4319</a></td></tr
><tr id="gr_svn7768_4320"
><td id="4320"><a href="#4320">4320</a></td></tr
><tr id="gr_svn7768_4321"
><td id="4321"><a href="#4321">4321</a></td></tr
><tr id="gr_svn7768_4322"
><td id="4322"><a href="#4322">4322</a></td></tr
><tr id="gr_svn7768_4323"
><td id="4323"><a href="#4323">4323</a></td></tr
><tr id="gr_svn7768_4324"
><td id="4324"><a href="#4324">4324</a></td></tr
><tr id="gr_svn7768_4325"
><td id="4325"><a href="#4325">4325</a></td></tr
><tr id="gr_svn7768_4326"
><td id="4326"><a href="#4326">4326</a></td></tr
><tr id="gr_svn7768_4327"
><td id="4327"><a href="#4327">4327</a></td></tr
><tr id="gr_svn7768_4328"
><td id="4328"><a href="#4328">4328</a></td></tr
><tr id="gr_svn7768_4329"
><td id="4329"><a href="#4329">4329</a></td></tr
><tr id="gr_svn7768_4330"
><td id="4330"><a href="#4330">4330</a></td></tr
><tr id="gr_svn7768_4331"
><td id="4331"><a href="#4331">4331</a></td></tr
><tr id="gr_svn7768_4332"
><td id="4332"><a href="#4332">4332</a></td></tr
><tr id="gr_svn7768_4333"
><td id="4333"><a href="#4333">4333</a></td></tr
><tr id="gr_svn7768_4334"
><td id="4334"><a href="#4334">4334</a></td></tr
><tr id="gr_svn7768_4335"
><td id="4335"><a href="#4335">4335</a></td></tr
><tr id="gr_svn7768_4336"
><td id="4336"><a href="#4336">4336</a></td></tr
><tr id="gr_svn7768_4337"
><td id="4337"><a href="#4337">4337</a></td></tr
><tr id="gr_svn7768_4338"
><td id="4338"><a href="#4338">4338</a></td></tr
><tr id="gr_svn7768_4339"
><td id="4339"><a href="#4339">4339</a></td></tr
><tr id="gr_svn7768_4340"
><td id="4340"><a href="#4340">4340</a></td></tr
><tr id="gr_svn7768_4341"
><td id="4341"><a href="#4341">4341</a></td></tr
><tr id="gr_svn7768_4342"
><td id="4342"><a href="#4342">4342</a></td></tr
><tr id="gr_svn7768_4343"
><td id="4343"><a href="#4343">4343</a></td></tr
><tr id="gr_svn7768_4344"
><td id="4344"><a href="#4344">4344</a></td></tr
><tr id="gr_svn7768_4345"
><td id="4345"><a href="#4345">4345</a></td></tr
><tr id="gr_svn7768_4346"
><td id="4346"><a href="#4346">4346</a></td></tr
><tr id="gr_svn7768_4347"
><td id="4347"><a href="#4347">4347</a></td></tr
><tr id="gr_svn7768_4348"
><td id="4348"><a href="#4348">4348</a></td></tr
><tr id="gr_svn7768_4349"
><td id="4349"><a href="#4349">4349</a></td></tr
><tr id="gr_svn7768_4350"
><td id="4350"><a href="#4350">4350</a></td></tr
><tr id="gr_svn7768_4351"
><td id="4351"><a href="#4351">4351</a></td></tr
><tr id="gr_svn7768_4352"
><td id="4352"><a href="#4352">4352</a></td></tr
><tr id="gr_svn7768_4353"
><td id="4353"><a href="#4353">4353</a></td></tr
><tr id="gr_svn7768_4354"
><td id="4354"><a href="#4354">4354</a></td></tr
><tr id="gr_svn7768_4355"
><td id="4355"><a href="#4355">4355</a></td></tr
><tr id="gr_svn7768_4356"
><td id="4356"><a href="#4356">4356</a></td></tr
><tr id="gr_svn7768_4357"
><td id="4357"><a href="#4357">4357</a></td></tr
><tr id="gr_svn7768_4358"
><td id="4358"><a href="#4358">4358</a></td></tr
><tr id="gr_svn7768_4359"
><td id="4359"><a href="#4359">4359</a></td></tr
><tr id="gr_svn7768_4360"
><td id="4360"><a href="#4360">4360</a></td></tr
><tr id="gr_svn7768_4361"
><td id="4361"><a href="#4361">4361</a></td></tr
><tr id="gr_svn7768_4362"
><td id="4362"><a href="#4362">4362</a></td></tr
><tr id="gr_svn7768_4363"
><td id="4363"><a href="#4363">4363</a></td></tr
><tr id="gr_svn7768_4364"
><td id="4364"><a href="#4364">4364</a></td></tr
><tr id="gr_svn7768_4365"
><td id="4365"><a href="#4365">4365</a></td></tr
><tr id="gr_svn7768_4366"
><td id="4366"><a href="#4366">4366</a></td></tr
><tr id="gr_svn7768_4367"
><td id="4367"><a href="#4367">4367</a></td></tr
><tr id="gr_svn7768_4368"
><td id="4368"><a href="#4368">4368</a></td></tr
><tr id="gr_svn7768_4369"
><td id="4369"><a href="#4369">4369</a></td></tr
><tr id="gr_svn7768_4370"
><td id="4370"><a href="#4370">4370</a></td></tr
><tr id="gr_svn7768_4371"
><td id="4371"><a href="#4371">4371</a></td></tr
><tr id="gr_svn7768_4372"
><td id="4372"><a href="#4372">4372</a></td></tr
><tr id="gr_svn7768_4373"
><td id="4373"><a href="#4373">4373</a></td></tr
><tr id="gr_svn7768_4374"
><td id="4374"><a href="#4374">4374</a></td></tr
><tr id="gr_svn7768_4375"
><td id="4375"><a href="#4375">4375</a></td></tr
><tr id="gr_svn7768_4376"
><td id="4376"><a href="#4376">4376</a></td></tr
><tr id="gr_svn7768_4377"
><td id="4377"><a href="#4377">4377</a></td></tr
><tr id="gr_svn7768_4378"
><td id="4378"><a href="#4378">4378</a></td></tr
><tr id="gr_svn7768_4379"
><td id="4379"><a href="#4379">4379</a></td></tr
><tr id="gr_svn7768_4380"
><td id="4380"><a href="#4380">4380</a></td></tr
><tr id="gr_svn7768_4381"
><td id="4381"><a href="#4381">4381</a></td></tr
><tr id="gr_svn7768_4382"
><td id="4382"><a href="#4382">4382</a></td></tr
><tr id="gr_svn7768_4383"
><td id="4383"><a href="#4383">4383</a></td></tr
><tr id="gr_svn7768_4384"
><td id="4384"><a href="#4384">4384</a></td></tr
><tr id="gr_svn7768_4385"
><td id="4385"><a href="#4385">4385</a></td></tr
><tr id="gr_svn7768_4386"
><td id="4386"><a href="#4386">4386</a></td></tr
><tr id="gr_svn7768_4387"
><td id="4387"><a href="#4387">4387</a></td></tr
><tr id="gr_svn7768_4388"
><td id="4388"><a href="#4388">4388</a></td></tr
><tr id="gr_svn7768_4389"
><td id="4389"><a href="#4389">4389</a></td></tr
><tr id="gr_svn7768_4390"
><td id="4390"><a href="#4390">4390</a></td></tr
><tr id="gr_svn7768_4391"
><td id="4391"><a href="#4391">4391</a></td></tr
><tr id="gr_svn7768_4392"
><td id="4392"><a href="#4392">4392</a></td></tr
><tr id="gr_svn7768_4393"
><td id="4393"><a href="#4393">4393</a></td></tr
><tr id="gr_svn7768_4394"
><td id="4394"><a href="#4394">4394</a></td></tr
><tr id="gr_svn7768_4395"
><td id="4395"><a href="#4395">4395</a></td></tr
><tr id="gr_svn7768_4396"
><td id="4396"><a href="#4396">4396</a></td></tr
><tr id="gr_svn7768_4397"
><td id="4397"><a href="#4397">4397</a></td></tr
><tr id="gr_svn7768_4398"
><td id="4398"><a href="#4398">4398</a></td></tr
><tr id="gr_svn7768_4399"
><td id="4399"><a href="#4399">4399</a></td></tr
><tr id="gr_svn7768_4400"
><td id="4400"><a href="#4400">4400</a></td></tr
><tr id="gr_svn7768_4401"
><td id="4401"><a href="#4401">4401</a></td></tr
><tr id="gr_svn7768_4402"
><td id="4402"><a href="#4402">4402</a></td></tr
><tr id="gr_svn7768_4403"
><td id="4403"><a href="#4403">4403</a></td></tr
><tr id="gr_svn7768_4404"
><td id="4404"><a href="#4404">4404</a></td></tr
><tr id="gr_svn7768_4405"
><td id="4405"><a href="#4405">4405</a></td></tr
><tr id="gr_svn7768_4406"
><td id="4406"><a href="#4406">4406</a></td></tr
><tr id="gr_svn7768_4407"
><td id="4407"><a href="#4407">4407</a></td></tr
><tr id="gr_svn7768_4408"
><td id="4408"><a href="#4408">4408</a></td></tr
><tr id="gr_svn7768_4409"
><td id="4409"><a href="#4409">4409</a></td></tr
><tr id="gr_svn7768_4410"
><td id="4410"><a href="#4410">4410</a></td></tr
><tr id="gr_svn7768_4411"
><td id="4411"><a href="#4411">4411</a></td></tr
><tr id="gr_svn7768_4412"
><td id="4412"><a href="#4412">4412</a></td></tr
><tr id="gr_svn7768_4413"
><td id="4413"><a href="#4413">4413</a></td></tr
><tr id="gr_svn7768_4414"
><td id="4414"><a href="#4414">4414</a></td></tr
><tr id="gr_svn7768_4415"
><td id="4415"><a href="#4415">4415</a></td></tr
><tr id="gr_svn7768_4416"
><td id="4416"><a href="#4416">4416</a></td></tr
><tr id="gr_svn7768_4417"
><td id="4417"><a href="#4417">4417</a></td></tr
><tr id="gr_svn7768_4418"
><td id="4418"><a href="#4418">4418</a></td></tr
><tr id="gr_svn7768_4419"
><td id="4419"><a href="#4419">4419</a></td></tr
><tr id="gr_svn7768_4420"
><td id="4420"><a href="#4420">4420</a></td></tr
><tr id="gr_svn7768_4421"
><td id="4421"><a href="#4421">4421</a></td></tr
><tr id="gr_svn7768_4422"
><td id="4422"><a href="#4422">4422</a></td></tr
><tr id="gr_svn7768_4423"
><td id="4423"><a href="#4423">4423</a></td></tr
><tr id="gr_svn7768_4424"
><td id="4424"><a href="#4424">4424</a></td></tr
><tr id="gr_svn7768_4425"
><td id="4425"><a href="#4425">4425</a></td></tr
><tr id="gr_svn7768_4426"
><td id="4426"><a href="#4426">4426</a></td></tr
><tr id="gr_svn7768_4427"
><td id="4427"><a href="#4427">4427</a></td></tr
><tr id="gr_svn7768_4428"
><td id="4428"><a href="#4428">4428</a></td></tr
><tr id="gr_svn7768_4429"
><td id="4429"><a href="#4429">4429</a></td></tr
><tr id="gr_svn7768_4430"
><td id="4430"><a href="#4430">4430</a></td></tr
><tr id="gr_svn7768_4431"
><td id="4431"><a href="#4431">4431</a></td></tr
><tr id="gr_svn7768_4432"
><td id="4432"><a href="#4432">4432</a></td></tr
><tr id="gr_svn7768_4433"
><td id="4433"><a href="#4433">4433</a></td></tr
><tr id="gr_svn7768_4434"
><td id="4434"><a href="#4434">4434</a></td></tr
><tr id="gr_svn7768_4435"
><td id="4435"><a href="#4435">4435</a></td></tr
><tr id="gr_svn7768_4436"
><td id="4436"><a href="#4436">4436</a></td></tr
><tr id="gr_svn7768_4437"
><td id="4437"><a href="#4437">4437</a></td></tr
><tr id="gr_svn7768_4438"
><td id="4438"><a href="#4438">4438</a></td></tr
><tr id="gr_svn7768_4439"
><td id="4439"><a href="#4439">4439</a></td></tr
><tr id="gr_svn7768_4440"
><td id="4440"><a href="#4440">4440</a></td></tr
><tr id="gr_svn7768_4441"
><td id="4441"><a href="#4441">4441</a></td></tr
><tr id="gr_svn7768_4442"
><td id="4442"><a href="#4442">4442</a></td></tr
><tr id="gr_svn7768_4443"
><td id="4443"><a href="#4443">4443</a></td></tr
><tr id="gr_svn7768_4444"
><td id="4444"><a href="#4444">4444</a></td></tr
><tr id="gr_svn7768_4445"
><td id="4445"><a href="#4445">4445</a></td></tr
><tr id="gr_svn7768_4446"
><td id="4446"><a href="#4446">4446</a></td></tr
><tr id="gr_svn7768_4447"
><td id="4447"><a href="#4447">4447</a></td></tr
><tr id="gr_svn7768_4448"
><td id="4448"><a href="#4448">4448</a></td></tr
><tr id="gr_svn7768_4449"
><td id="4449"><a href="#4449">4449</a></td></tr
><tr id="gr_svn7768_4450"
><td id="4450"><a href="#4450">4450</a></td></tr
><tr id="gr_svn7768_4451"
><td id="4451"><a href="#4451">4451</a></td></tr
><tr id="gr_svn7768_4452"
><td id="4452"><a href="#4452">4452</a></td></tr
><tr id="gr_svn7768_4453"
><td id="4453"><a href="#4453">4453</a></td></tr
><tr id="gr_svn7768_4454"
><td id="4454"><a href="#4454">4454</a></td></tr
><tr id="gr_svn7768_4455"
><td id="4455"><a href="#4455">4455</a></td></tr
><tr id="gr_svn7768_4456"
><td id="4456"><a href="#4456">4456</a></td></tr
><tr id="gr_svn7768_4457"
><td id="4457"><a href="#4457">4457</a></td></tr
><tr id="gr_svn7768_4458"
><td id="4458"><a href="#4458">4458</a></td></tr
><tr id="gr_svn7768_4459"
><td id="4459"><a href="#4459">4459</a></td></tr
><tr id="gr_svn7768_4460"
><td id="4460"><a href="#4460">4460</a></td></tr
><tr id="gr_svn7768_4461"
><td id="4461"><a href="#4461">4461</a></td></tr
><tr id="gr_svn7768_4462"
><td id="4462"><a href="#4462">4462</a></td></tr
><tr id="gr_svn7768_4463"
><td id="4463"><a href="#4463">4463</a></td></tr
><tr id="gr_svn7768_4464"
><td id="4464"><a href="#4464">4464</a></td></tr
><tr id="gr_svn7768_4465"
><td id="4465"><a href="#4465">4465</a></td></tr
><tr id="gr_svn7768_4466"
><td id="4466"><a href="#4466">4466</a></td></tr
><tr id="gr_svn7768_4467"
><td id="4467"><a href="#4467">4467</a></td></tr
><tr id="gr_svn7768_4468"
><td id="4468"><a href="#4468">4468</a></td></tr
><tr id="gr_svn7768_4469"
><td id="4469"><a href="#4469">4469</a></td></tr
><tr id="gr_svn7768_4470"
><td id="4470"><a href="#4470">4470</a></td></tr
><tr id="gr_svn7768_4471"
><td id="4471"><a href="#4471">4471</a></td></tr
><tr id="gr_svn7768_4472"
><td id="4472"><a href="#4472">4472</a></td></tr
><tr id="gr_svn7768_4473"
><td id="4473"><a href="#4473">4473</a></td></tr
><tr id="gr_svn7768_4474"
><td id="4474"><a href="#4474">4474</a></td></tr
><tr id="gr_svn7768_4475"
><td id="4475"><a href="#4475">4475</a></td></tr
><tr id="gr_svn7768_4476"
><td id="4476"><a href="#4476">4476</a></td></tr
><tr id="gr_svn7768_4477"
><td id="4477"><a href="#4477">4477</a></td></tr
><tr id="gr_svn7768_4478"
><td id="4478"><a href="#4478">4478</a></td></tr
><tr id="gr_svn7768_4479"
><td id="4479"><a href="#4479">4479</a></td></tr
><tr id="gr_svn7768_4480"
><td id="4480"><a href="#4480">4480</a></td></tr
><tr id="gr_svn7768_4481"
><td id="4481"><a href="#4481">4481</a></td></tr
><tr id="gr_svn7768_4482"
><td id="4482"><a href="#4482">4482</a></td></tr
><tr id="gr_svn7768_4483"
><td id="4483"><a href="#4483">4483</a></td></tr
><tr id="gr_svn7768_4484"
><td id="4484"><a href="#4484">4484</a></td></tr
><tr id="gr_svn7768_4485"
><td id="4485"><a href="#4485">4485</a></td></tr
><tr id="gr_svn7768_4486"
><td id="4486"><a href="#4486">4486</a></td></tr
><tr id="gr_svn7768_4487"
><td id="4487"><a href="#4487">4487</a></td></tr
><tr id="gr_svn7768_4488"
><td id="4488"><a href="#4488">4488</a></td></tr
><tr id="gr_svn7768_4489"
><td id="4489"><a href="#4489">4489</a></td></tr
><tr id="gr_svn7768_4490"
><td id="4490"><a href="#4490">4490</a></td></tr
><tr id="gr_svn7768_4491"
><td id="4491"><a href="#4491">4491</a></td></tr
><tr id="gr_svn7768_4492"
><td id="4492"><a href="#4492">4492</a></td></tr
><tr id="gr_svn7768_4493"
><td id="4493"><a href="#4493">4493</a></td></tr
><tr id="gr_svn7768_4494"
><td id="4494"><a href="#4494">4494</a></td></tr
><tr id="gr_svn7768_4495"
><td id="4495"><a href="#4495">4495</a></td></tr
><tr id="gr_svn7768_4496"
><td id="4496"><a href="#4496">4496</a></td></tr
><tr id="gr_svn7768_4497"
><td id="4497"><a href="#4497">4497</a></td></tr
><tr id="gr_svn7768_4498"
><td id="4498"><a href="#4498">4498</a></td></tr
><tr id="gr_svn7768_4499"
><td id="4499"><a href="#4499">4499</a></td></tr
><tr id="gr_svn7768_4500"
><td id="4500"><a href="#4500">4500</a></td></tr
><tr id="gr_svn7768_4501"
><td id="4501"><a href="#4501">4501</a></td></tr
><tr id="gr_svn7768_4502"
><td id="4502"><a href="#4502">4502</a></td></tr
><tr id="gr_svn7768_4503"
><td id="4503"><a href="#4503">4503</a></td></tr
><tr id="gr_svn7768_4504"
><td id="4504"><a href="#4504">4504</a></td></tr
><tr id="gr_svn7768_4505"
><td id="4505"><a href="#4505">4505</a></td></tr
><tr id="gr_svn7768_4506"
><td id="4506"><a href="#4506">4506</a></td></tr
><tr id="gr_svn7768_4507"
><td id="4507"><a href="#4507">4507</a></td></tr
><tr id="gr_svn7768_4508"
><td id="4508"><a href="#4508">4508</a></td></tr
><tr id="gr_svn7768_4509"
><td id="4509"><a href="#4509">4509</a></td></tr
><tr id="gr_svn7768_4510"
><td id="4510"><a href="#4510">4510</a></td></tr
><tr id="gr_svn7768_4511"
><td id="4511"><a href="#4511">4511</a></td></tr
><tr id="gr_svn7768_4512"
><td id="4512"><a href="#4512">4512</a></td></tr
><tr id="gr_svn7768_4513"
><td id="4513"><a href="#4513">4513</a></td></tr
><tr id="gr_svn7768_4514"
><td id="4514"><a href="#4514">4514</a></td></tr
><tr id="gr_svn7768_4515"
><td id="4515"><a href="#4515">4515</a></td></tr
><tr id="gr_svn7768_4516"
><td id="4516"><a href="#4516">4516</a></td></tr
><tr id="gr_svn7768_4517"
><td id="4517"><a href="#4517">4517</a></td></tr
><tr id="gr_svn7768_4518"
><td id="4518"><a href="#4518">4518</a></td></tr
><tr id="gr_svn7768_4519"
><td id="4519"><a href="#4519">4519</a></td></tr
><tr id="gr_svn7768_4520"
><td id="4520"><a href="#4520">4520</a></td></tr
><tr id="gr_svn7768_4521"
><td id="4521"><a href="#4521">4521</a></td></tr
><tr id="gr_svn7768_4522"
><td id="4522"><a href="#4522">4522</a></td></tr
><tr id="gr_svn7768_4523"
><td id="4523"><a href="#4523">4523</a></td></tr
><tr id="gr_svn7768_4524"
><td id="4524"><a href="#4524">4524</a></td></tr
><tr id="gr_svn7768_4525"
><td id="4525"><a href="#4525">4525</a></td></tr
><tr id="gr_svn7768_4526"
><td id="4526"><a href="#4526">4526</a></td></tr
><tr id="gr_svn7768_4527"
><td id="4527"><a href="#4527">4527</a></td></tr
><tr id="gr_svn7768_4528"
><td id="4528"><a href="#4528">4528</a></td></tr
><tr id="gr_svn7768_4529"
><td id="4529"><a href="#4529">4529</a></td></tr
><tr id="gr_svn7768_4530"
><td id="4530"><a href="#4530">4530</a></td></tr
><tr id="gr_svn7768_4531"
><td id="4531"><a href="#4531">4531</a></td></tr
><tr id="gr_svn7768_4532"
><td id="4532"><a href="#4532">4532</a></td></tr
><tr id="gr_svn7768_4533"
><td id="4533"><a href="#4533">4533</a></td></tr
><tr id="gr_svn7768_4534"
><td id="4534"><a href="#4534">4534</a></td></tr
><tr id="gr_svn7768_4535"
><td id="4535"><a href="#4535">4535</a></td></tr
><tr id="gr_svn7768_4536"
><td id="4536"><a href="#4536">4536</a></td></tr
><tr id="gr_svn7768_4537"
><td id="4537"><a href="#4537">4537</a></td></tr
><tr id="gr_svn7768_4538"
><td id="4538"><a href="#4538">4538</a></td></tr
><tr id="gr_svn7768_4539"
><td id="4539"><a href="#4539">4539</a></td></tr
><tr id="gr_svn7768_4540"
><td id="4540"><a href="#4540">4540</a></td></tr
><tr id="gr_svn7768_4541"
><td id="4541"><a href="#4541">4541</a></td></tr
><tr id="gr_svn7768_4542"
><td id="4542"><a href="#4542">4542</a></td></tr
><tr id="gr_svn7768_4543"
><td id="4543"><a href="#4543">4543</a></td></tr
><tr id="gr_svn7768_4544"
><td id="4544"><a href="#4544">4544</a></td></tr
><tr id="gr_svn7768_4545"
><td id="4545"><a href="#4545">4545</a></td></tr
><tr id="gr_svn7768_4546"
><td id="4546"><a href="#4546">4546</a></td></tr
><tr id="gr_svn7768_4547"
><td id="4547"><a href="#4547">4547</a></td></tr
><tr id="gr_svn7768_4548"
><td id="4548"><a href="#4548">4548</a></td></tr
><tr id="gr_svn7768_4549"
><td id="4549"><a href="#4549">4549</a></td></tr
><tr id="gr_svn7768_4550"
><td id="4550"><a href="#4550">4550</a></td></tr
><tr id="gr_svn7768_4551"
><td id="4551"><a href="#4551">4551</a></td></tr
><tr id="gr_svn7768_4552"
><td id="4552"><a href="#4552">4552</a></td></tr
><tr id="gr_svn7768_4553"
><td id="4553"><a href="#4553">4553</a></td></tr
><tr id="gr_svn7768_4554"
><td id="4554"><a href="#4554">4554</a></td></tr
><tr id="gr_svn7768_4555"
><td id="4555"><a href="#4555">4555</a></td></tr
><tr id="gr_svn7768_4556"
><td id="4556"><a href="#4556">4556</a></td></tr
><tr id="gr_svn7768_4557"
><td id="4557"><a href="#4557">4557</a></td></tr
><tr id="gr_svn7768_4558"
><td id="4558"><a href="#4558">4558</a></td></tr
><tr id="gr_svn7768_4559"
><td id="4559"><a href="#4559">4559</a></td></tr
><tr id="gr_svn7768_4560"
><td id="4560"><a href="#4560">4560</a></td></tr
><tr id="gr_svn7768_4561"
><td id="4561"><a href="#4561">4561</a></td></tr
><tr id="gr_svn7768_4562"
><td id="4562"><a href="#4562">4562</a></td></tr
><tr id="gr_svn7768_4563"
><td id="4563"><a href="#4563">4563</a></td></tr
><tr id="gr_svn7768_4564"
><td id="4564"><a href="#4564">4564</a></td></tr
><tr id="gr_svn7768_4565"
><td id="4565"><a href="#4565">4565</a></td></tr
><tr id="gr_svn7768_4566"
><td id="4566"><a href="#4566">4566</a></td></tr
><tr id="gr_svn7768_4567"
><td id="4567"><a href="#4567">4567</a></td></tr
><tr id="gr_svn7768_4568"
><td id="4568"><a href="#4568">4568</a></td></tr
><tr id="gr_svn7768_4569"
><td id="4569"><a href="#4569">4569</a></td></tr
><tr id="gr_svn7768_4570"
><td id="4570"><a href="#4570">4570</a></td></tr
><tr id="gr_svn7768_4571"
><td id="4571"><a href="#4571">4571</a></td></tr
><tr id="gr_svn7768_4572"
><td id="4572"><a href="#4572">4572</a></td></tr
><tr id="gr_svn7768_4573"
><td id="4573"><a href="#4573">4573</a></td></tr
><tr id="gr_svn7768_4574"
><td id="4574"><a href="#4574">4574</a></td></tr
><tr id="gr_svn7768_4575"
><td id="4575"><a href="#4575">4575</a></td></tr
><tr id="gr_svn7768_4576"
><td id="4576"><a href="#4576">4576</a></td></tr
><tr id="gr_svn7768_4577"
><td id="4577"><a href="#4577">4577</a></td></tr
><tr id="gr_svn7768_4578"
><td id="4578"><a href="#4578">4578</a></td></tr
><tr id="gr_svn7768_4579"
><td id="4579"><a href="#4579">4579</a></td></tr
><tr id="gr_svn7768_4580"
><td id="4580"><a href="#4580">4580</a></td></tr
><tr id="gr_svn7768_4581"
><td id="4581"><a href="#4581">4581</a></td></tr
><tr id="gr_svn7768_4582"
><td id="4582"><a href="#4582">4582</a></td></tr
><tr id="gr_svn7768_4583"
><td id="4583"><a href="#4583">4583</a></td></tr
><tr id="gr_svn7768_4584"
><td id="4584"><a href="#4584">4584</a></td></tr
><tr id="gr_svn7768_4585"
><td id="4585"><a href="#4585">4585</a></td></tr
><tr id="gr_svn7768_4586"
><td id="4586"><a href="#4586">4586</a></td></tr
><tr id="gr_svn7768_4587"
><td id="4587"><a href="#4587">4587</a></td></tr
><tr id="gr_svn7768_4588"
><td id="4588"><a href="#4588">4588</a></td></tr
><tr id="gr_svn7768_4589"
><td id="4589"><a href="#4589">4589</a></td></tr
><tr id="gr_svn7768_4590"
><td id="4590"><a href="#4590">4590</a></td></tr
><tr id="gr_svn7768_4591"
><td id="4591"><a href="#4591">4591</a></td></tr
><tr id="gr_svn7768_4592"
><td id="4592"><a href="#4592">4592</a></td></tr
><tr id="gr_svn7768_4593"
><td id="4593"><a href="#4593">4593</a></td></tr
><tr id="gr_svn7768_4594"
><td id="4594"><a href="#4594">4594</a></td></tr
><tr id="gr_svn7768_4595"
><td id="4595"><a href="#4595">4595</a></td></tr
><tr id="gr_svn7768_4596"
><td id="4596"><a href="#4596">4596</a></td></tr
><tr id="gr_svn7768_4597"
><td id="4597"><a href="#4597">4597</a></td></tr
><tr id="gr_svn7768_4598"
><td id="4598"><a href="#4598">4598</a></td></tr
><tr id="gr_svn7768_4599"
><td id="4599"><a href="#4599">4599</a></td></tr
><tr id="gr_svn7768_4600"
><td id="4600"><a href="#4600">4600</a></td></tr
><tr id="gr_svn7768_4601"
><td id="4601"><a href="#4601">4601</a></td></tr
><tr id="gr_svn7768_4602"
><td id="4602"><a href="#4602">4602</a></td></tr
><tr id="gr_svn7768_4603"
><td id="4603"><a href="#4603">4603</a></td></tr
><tr id="gr_svn7768_4604"
><td id="4604"><a href="#4604">4604</a></td></tr
><tr id="gr_svn7768_4605"
><td id="4605"><a href="#4605">4605</a></td></tr
><tr id="gr_svn7768_4606"
><td id="4606"><a href="#4606">4606</a></td></tr
><tr id="gr_svn7768_4607"
><td id="4607"><a href="#4607">4607</a></td></tr
><tr id="gr_svn7768_4608"
><td id="4608"><a href="#4608">4608</a></td></tr
><tr id="gr_svn7768_4609"
><td id="4609"><a href="#4609">4609</a></td></tr
><tr id="gr_svn7768_4610"
><td id="4610"><a href="#4610">4610</a></td></tr
><tr id="gr_svn7768_4611"
><td id="4611"><a href="#4611">4611</a></td></tr
><tr id="gr_svn7768_4612"
><td id="4612"><a href="#4612">4612</a></td></tr
><tr id="gr_svn7768_4613"
><td id="4613"><a href="#4613">4613</a></td></tr
><tr id="gr_svn7768_4614"
><td id="4614"><a href="#4614">4614</a></td></tr
><tr id="gr_svn7768_4615"
><td id="4615"><a href="#4615">4615</a></td></tr
><tr id="gr_svn7768_4616"
><td id="4616"><a href="#4616">4616</a></td></tr
><tr id="gr_svn7768_4617"
><td id="4617"><a href="#4617">4617</a></td></tr
><tr id="gr_svn7768_4618"
><td id="4618"><a href="#4618">4618</a></td></tr
><tr id="gr_svn7768_4619"
><td id="4619"><a href="#4619">4619</a></td></tr
><tr id="gr_svn7768_4620"
><td id="4620"><a href="#4620">4620</a></td></tr
><tr id="gr_svn7768_4621"
><td id="4621"><a href="#4621">4621</a></td></tr
><tr id="gr_svn7768_4622"
><td id="4622"><a href="#4622">4622</a></td></tr
><tr id="gr_svn7768_4623"
><td id="4623"><a href="#4623">4623</a></td></tr
><tr id="gr_svn7768_4624"
><td id="4624"><a href="#4624">4624</a></td></tr
><tr id="gr_svn7768_4625"
><td id="4625"><a href="#4625">4625</a></td></tr
><tr id="gr_svn7768_4626"
><td id="4626"><a href="#4626">4626</a></td></tr
><tr id="gr_svn7768_4627"
><td id="4627"><a href="#4627">4627</a></td></tr
><tr id="gr_svn7768_4628"
><td id="4628"><a href="#4628">4628</a></td></tr
><tr id="gr_svn7768_4629"
><td id="4629"><a href="#4629">4629</a></td></tr
><tr id="gr_svn7768_4630"
><td id="4630"><a href="#4630">4630</a></td></tr
><tr id="gr_svn7768_4631"
><td id="4631"><a href="#4631">4631</a></td></tr
><tr id="gr_svn7768_4632"
><td id="4632"><a href="#4632">4632</a></td></tr
><tr id="gr_svn7768_4633"
><td id="4633"><a href="#4633">4633</a></td></tr
><tr id="gr_svn7768_4634"
><td id="4634"><a href="#4634">4634</a></td></tr
><tr id="gr_svn7768_4635"
><td id="4635"><a href="#4635">4635</a></td></tr
><tr id="gr_svn7768_4636"
><td id="4636"><a href="#4636">4636</a></td></tr
><tr id="gr_svn7768_4637"
><td id="4637"><a href="#4637">4637</a></td></tr
><tr id="gr_svn7768_4638"
><td id="4638"><a href="#4638">4638</a></td></tr
><tr id="gr_svn7768_4639"
><td id="4639"><a href="#4639">4639</a></td></tr
><tr id="gr_svn7768_4640"
><td id="4640"><a href="#4640">4640</a></td></tr
><tr id="gr_svn7768_4641"
><td id="4641"><a href="#4641">4641</a></td></tr
><tr id="gr_svn7768_4642"
><td id="4642"><a href="#4642">4642</a></td></tr
><tr id="gr_svn7768_4643"
><td id="4643"><a href="#4643">4643</a></td></tr
><tr id="gr_svn7768_4644"
><td id="4644"><a href="#4644">4644</a></td></tr
><tr id="gr_svn7768_4645"
><td id="4645"><a href="#4645">4645</a></td></tr
><tr id="gr_svn7768_4646"
><td id="4646"><a href="#4646">4646</a></td></tr
><tr id="gr_svn7768_4647"
><td id="4647"><a href="#4647">4647</a></td></tr
><tr id="gr_svn7768_4648"
><td id="4648"><a href="#4648">4648</a></td></tr
><tr id="gr_svn7768_4649"
><td id="4649"><a href="#4649">4649</a></td></tr
><tr id="gr_svn7768_4650"
><td id="4650"><a href="#4650">4650</a></td></tr
><tr id="gr_svn7768_4651"
><td id="4651"><a href="#4651">4651</a></td></tr
><tr id="gr_svn7768_4652"
><td id="4652"><a href="#4652">4652</a></td></tr
><tr id="gr_svn7768_4653"
><td id="4653"><a href="#4653">4653</a></td></tr
><tr id="gr_svn7768_4654"
><td id="4654"><a href="#4654">4654</a></td></tr
><tr id="gr_svn7768_4655"
><td id="4655"><a href="#4655">4655</a></td></tr
><tr id="gr_svn7768_4656"
><td id="4656"><a href="#4656">4656</a></td></tr
><tr id="gr_svn7768_4657"
><td id="4657"><a href="#4657">4657</a></td></tr
><tr id="gr_svn7768_4658"
><td id="4658"><a href="#4658">4658</a></td></tr
><tr id="gr_svn7768_4659"
><td id="4659"><a href="#4659">4659</a></td></tr
><tr id="gr_svn7768_4660"
><td id="4660"><a href="#4660">4660</a></td></tr
><tr id="gr_svn7768_4661"
><td id="4661"><a href="#4661">4661</a></td></tr
><tr id="gr_svn7768_4662"
><td id="4662"><a href="#4662">4662</a></td></tr
><tr id="gr_svn7768_4663"
><td id="4663"><a href="#4663">4663</a></td></tr
><tr id="gr_svn7768_4664"
><td id="4664"><a href="#4664">4664</a></td></tr
><tr id="gr_svn7768_4665"
><td id="4665"><a href="#4665">4665</a></td></tr
><tr id="gr_svn7768_4666"
><td id="4666"><a href="#4666">4666</a></td></tr
><tr id="gr_svn7768_4667"
><td id="4667"><a href="#4667">4667</a></td></tr
><tr id="gr_svn7768_4668"
><td id="4668"><a href="#4668">4668</a></td></tr
><tr id="gr_svn7768_4669"
><td id="4669"><a href="#4669">4669</a></td></tr
><tr id="gr_svn7768_4670"
><td id="4670"><a href="#4670">4670</a></td></tr
><tr id="gr_svn7768_4671"
><td id="4671"><a href="#4671">4671</a></td></tr
><tr id="gr_svn7768_4672"
><td id="4672"><a href="#4672">4672</a></td></tr
><tr id="gr_svn7768_4673"
><td id="4673"><a href="#4673">4673</a></td></tr
><tr id="gr_svn7768_4674"
><td id="4674"><a href="#4674">4674</a></td></tr
><tr id="gr_svn7768_4675"
><td id="4675"><a href="#4675">4675</a></td></tr
><tr id="gr_svn7768_4676"
><td id="4676"><a href="#4676">4676</a></td></tr
><tr id="gr_svn7768_4677"
><td id="4677"><a href="#4677">4677</a></td></tr
><tr id="gr_svn7768_4678"
><td id="4678"><a href="#4678">4678</a></td></tr
><tr id="gr_svn7768_4679"
><td id="4679"><a href="#4679">4679</a></td></tr
><tr id="gr_svn7768_4680"
><td id="4680"><a href="#4680">4680</a></td></tr
><tr id="gr_svn7768_4681"
><td id="4681"><a href="#4681">4681</a></td></tr
><tr id="gr_svn7768_4682"
><td id="4682"><a href="#4682">4682</a></td></tr
><tr id="gr_svn7768_4683"
><td id="4683"><a href="#4683">4683</a></td></tr
><tr id="gr_svn7768_4684"
><td id="4684"><a href="#4684">4684</a></td></tr
><tr id="gr_svn7768_4685"
><td id="4685"><a href="#4685">4685</a></td></tr
><tr id="gr_svn7768_4686"
><td id="4686"><a href="#4686">4686</a></td></tr
><tr id="gr_svn7768_4687"
><td id="4687"><a href="#4687">4687</a></td></tr
><tr id="gr_svn7768_4688"
><td id="4688"><a href="#4688">4688</a></td></tr
><tr id="gr_svn7768_4689"
><td id="4689"><a href="#4689">4689</a></td></tr
><tr id="gr_svn7768_4690"
><td id="4690"><a href="#4690">4690</a></td></tr
><tr id="gr_svn7768_4691"
><td id="4691"><a href="#4691">4691</a></td></tr
><tr id="gr_svn7768_4692"
><td id="4692"><a href="#4692">4692</a></td></tr
><tr id="gr_svn7768_4693"
><td id="4693"><a href="#4693">4693</a></td></tr
><tr id="gr_svn7768_4694"
><td id="4694"><a href="#4694">4694</a></td></tr
><tr id="gr_svn7768_4695"
><td id="4695"><a href="#4695">4695</a></td></tr
><tr id="gr_svn7768_4696"
><td id="4696"><a href="#4696">4696</a></td></tr
><tr id="gr_svn7768_4697"
><td id="4697"><a href="#4697">4697</a></td></tr
><tr id="gr_svn7768_4698"
><td id="4698"><a href="#4698">4698</a></td></tr
><tr id="gr_svn7768_4699"
><td id="4699"><a href="#4699">4699</a></td></tr
><tr id="gr_svn7768_4700"
><td id="4700"><a href="#4700">4700</a></td></tr
><tr id="gr_svn7768_4701"
><td id="4701"><a href="#4701">4701</a></td></tr
><tr id="gr_svn7768_4702"
><td id="4702"><a href="#4702">4702</a></td></tr
><tr id="gr_svn7768_4703"
><td id="4703"><a href="#4703">4703</a></td></tr
><tr id="gr_svn7768_4704"
><td id="4704"><a href="#4704">4704</a></td></tr
><tr id="gr_svn7768_4705"
><td id="4705"><a href="#4705">4705</a></td></tr
><tr id="gr_svn7768_4706"
><td id="4706"><a href="#4706">4706</a></td></tr
><tr id="gr_svn7768_4707"
><td id="4707"><a href="#4707">4707</a></td></tr
><tr id="gr_svn7768_4708"
><td id="4708"><a href="#4708">4708</a></td></tr
><tr id="gr_svn7768_4709"
><td id="4709"><a href="#4709">4709</a></td></tr
><tr id="gr_svn7768_4710"
><td id="4710"><a href="#4710">4710</a></td></tr
><tr id="gr_svn7768_4711"
><td id="4711"><a href="#4711">4711</a></td></tr
><tr id="gr_svn7768_4712"
><td id="4712"><a href="#4712">4712</a></td></tr
><tr id="gr_svn7768_4713"
><td id="4713"><a href="#4713">4713</a></td></tr
><tr id="gr_svn7768_4714"
><td id="4714"><a href="#4714">4714</a></td></tr
><tr id="gr_svn7768_4715"
><td id="4715"><a href="#4715">4715</a></td></tr
><tr id="gr_svn7768_4716"
><td id="4716"><a href="#4716">4716</a></td></tr
><tr id="gr_svn7768_4717"
><td id="4717"><a href="#4717">4717</a></td></tr
><tr id="gr_svn7768_4718"
><td id="4718"><a href="#4718">4718</a></td></tr
><tr id="gr_svn7768_4719"
><td id="4719"><a href="#4719">4719</a></td></tr
><tr id="gr_svn7768_4720"
><td id="4720"><a href="#4720">4720</a></td></tr
><tr id="gr_svn7768_4721"
><td id="4721"><a href="#4721">4721</a></td></tr
><tr id="gr_svn7768_4722"
><td id="4722"><a href="#4722">4722</a></td></tr
><tr id="gr_svn7768_4723"
><td id="4723"><a href="#4723">4723</a></td></tr
><tr id="gr_svn7768_4724"
><td id="4724"><a href="#4724">4724</a></td></tr
><tr id="gr_svn7768_4725"
><td id="4725"><a href="#4725">4725</a></td></tr
><tr id="gr_svn7768_4726"
><td id="4726"><a href="#4726">4726</a></td></tr
><tr id="gr_svn7768_4727"
><td id="4727"><a href="#4727">4727</a></td></tr
><tr id="gr_svn7768_4728"
><td id="4728"><a href="#4728">4728</a></td></tr
><tr id="gr_svn7768_4729"
><td id="4729"><a href="#4729">4729</a></td></tr
><tr id="gr_svn7768_4730"
><td id="4730"><a href="#4730">4730</a></td></tr
><tr id="gr_svn7768_4731"
><td id="4731"><a href="#4731">4731</a></td></tr
><tr id="gr_svn7768_4732"
><td id="4732"><a href="#4732">4732</a></td></tr
><tr id="gr_svn7768_4733"
><td id="4733"><a href="#4733">4733</a></td></tr
><tr id="gr_svn7768_4734"
><td id="4734"><a href="#4734">4734</a></td></tr
><tr id="gr_svn7768_4735"
><td id="4735"><a href="#4735">4735</a></td></tr
><tr id="gr_svn7768_4736"
><td id="4736"><a href="#4736">4736</a></td></tr
><tr id="gr_svn7768_4737"
><td id="4737"><a href="#4737">4737</a></td></tr
><tr id="gr_svn7768_4738"
><td id="4738"><a href="#4738">4738</a></td></tr
><tr id="gr_svn7768_4739"
><td id="4739"><a href="#4739">4739</a></td></tr
><tr id="gr_svn7768_4740"
><td id="4740"><a href="#4740">4740</a></td></tr
><tr id="gr_svn7768_4741"
><td id="4741"><a href="#4741">4741</a></td></tr
><tr id="gr_svn7768_4742"
><td id="4742"><a href="#4742">4742</a></td></tr
><tr id="gr_svn7768_4743"
><td id="4743"><a href="#4743">4743</a></td></tr
><tr id="gr_svn7768_4744"
><td id="4744"><a href="#4744">4744</a></td></tr
><tr id="gr_svn7768_4745"
><td id="4745"><a href="#4745">4745</a></td></tr
><tr id="gr_svn7768_4746"
><td id="4746"><a href="#4746">4746</a></td></tr
><tr id="gr_svn7768_4747"
><td id="4747"><a href="#4747">4747</a></td></tr
><tr id="gr_svn7768_4748"
><td id="4748"><a href="#4748">4748</a></td></tr
><tr id="gr_svn7768_4749"
><td id="4749"><a href="#4749">4749</a></td></tr
><tr id="gr_svn7768_4750"
><td id="4750"><a href="#4750">4750</a></td></tr
><tr id="gr_svn7768_4751"
><td id="4751"><a href="#4751">4751</a></td></tr
><tr id="gr_svn7768_4752"
><td id="4752"><a href="#4752">4752</a></td></tr
><tr id="gr_svn7768_4753"
><td id="4753"><a href="#4753">4753</a></td></tr
><tr id="gr_svn7768_4754"
><td id="4754"><a href="#4754">4754</a></td></tr
><tr id="gr_svn7768_4755"
><td id="4755"><a href="#4755">4755</a></td></tr
><tr id="gr_svn7768_4756"
><td id="4756"><a href="#4756">4756</a></td></tr
><tr id="gr_svn7768_4757"
><td id="4757"><a href="#4757">4757</a></td></tr
><tr id="gr_svn7768_4758"
><td id="4758"><a href="#4758">4758</a></td></tr
><tr id="gr_svn7768_4759"
><td id="4759"><a href="#4759">4759</a></td></tr
><tr id="gr_svn7768_4760"
><td id="4760"><a href="#4760">4760</a></td></tr
><tr id="gr_svn7768_4761"
><td id="4761"><a href="#4761">4761</a></td></tr
><tr id="gr_svn7768_4762"
><td id="4762"><a href="#4762">4762</a></td></tr
><tr id="gr_svn7768_4763"
><td id="4763"><a href="#4763">4763</a></td></tr
><tr id="gr_svn7768_4764"
><td id="4764"><a href="#4764">4764</a></td></tr
><tr id="gr_svn7768_4765"
><td id="4765"><a href="#4765">4765</a></td></tr
><tr id="gr_svn7768_4766"
><td id="4766"><a href="#4766">4766</a></td></tr
><tr id="gr_svn7768_4767"
><td id="4767"><a href="#4767">4767</a></td></tr
><tr id="gr_svn7768_4768"
><td id="4768"><a href="#4768">4768</a></td></tr
><tr id="gr_svn7768_4769"
><td id="4769"><a href="#4769">4769</a></td></tr
><tr id="gr_svn7768_4770"
><td id="4770"><a href="#4770">4770</a></td></tr
><tr id="gr_svn7768_4771"
><td id="4771"><a href="#4771">4771</a></td></tr
><tr id="gr_svn7768_4772"
><td id="4772"><a href="#4772">4772</a></td></tr
><tr id="gr_svn7768_4773"
><td id="4773"><a href="#4773">4773</a></td></tr
><tr id="gr_svn7768_4774"
><td id="4774"><a href="#4774">4774</a></td></tr
><tr id="gr_svn7768_4775"
><td id="4775"><a href="#4775">4775</a></td></tr
><tr id="gr_svn7768_4776"
><td id="4776"><a href="#4776">4776</a></td></tr
><tr id="gr_svn7768_4777"
><td id="4777"><a href="#4777">4777</a></td></tr
><tr id="gr_svn7768_4778"
><td id="4778"><a href="#4778">4778</a></td></tr
><tr id="gr_svn7768_4779"
><td id="4779"><a href="#4779">4779</a></td></tr
><tr id="gr_svn7768_4780"
><td id="4780"><a href="#4780">4780</a></td></tr
><tr id="gr_svn7768_4781"
><td id="4781"><a href="#4781">4781</a></td></tr
><tr id="gr_svn7768_4782"
><td id="4782"><a href="#4782">4782</a></td></tr
><tr id="gr_svn7768_4783"
><td id="4783"><a href="#4783">4783</a></td></tr
><tr id="gr_svn7768_4784"
><td id="4784"><a href="#4784">4784</a></td></tr
><tr id="gr_svn7768_4785"
><td id="4785"><a href="#4785">4785</a></td></tr
><tr id="gr_svn7768_4786"
><td id="4786"><a href="#4786">4786</a></td></tr
><tr id="gr_svn7768_4787"
><td id="4787"><a href="#4787">4787</a></td></tr
><tr id="gr_svn7768_4788"
><td id="4788"><a href="#4788">4788</a></td></tr
><tr id="gr_svn7768_4789"
><td id="4789"><a href="#4789">4789</a></td></tr
><tr id="gr_svn7768_4790"
><td id="4790"><a href="#4790">4790</a></td></tr
><tr id="gr_svn7768_4791"
><td id="4791"><a href="#4791">4791</a></td></tr
><tr id="gr_svn7768_4792"
><td id="4792"><a href="#4792">4792</a></td></tr
><tr id="gr_svn7768_4793"
><td id="4793"><a href="#4793">4793</a></td></tr
><tr id="gr_svn7768_4794"
><td id="4794"><a href="#4794">4794</a></td></tr
><tr id="gr_svn7768_4795"
><td id="4795"><a href="#4795">4795</a></td></tr
><tr id="gr_svn7768_4796"
><td id="4796"><a href="#4796">4796</a></td></tr
><tr id="gr_svn7768_4797"
><td id="4797"><a href="#4797">4797</a></td></tr
><tr id="gr_svn7768_4798"
><td id="4798"><a href="#4798">4798</a></td></tr
><tr id="gr_svn7768_4799"
><td id="4799"><a href="#4799">4799</a></td></tr
><tr id="gr_svn7768_4800"
><td id="4800"><a href="#4800">4800</a></td></tr
><tr id="gr_svn7768_4801"
><td id="4801"><a href="#4801">4801</a></td></tr
><tr id="gr_svn7768_4802"
><td id="4802"><a href="#4802">4802</a></td></tr
><tr id="gr_svn7768_4803"
><td id="4803"><a href="#4803">4803</a></td></tr
><tr id="gr_svn7768_4804"
><td id="4804"><a href="#4804">4804</a></td></tr
><tr id="gr_svn7768_4805"
><td id="4805"><a href="#4805">4805</a></td></tr
><tr id="gr_svn7768_4806"
><td id="4806"><a href="#4806">4806</a></td></tr
><tr id="gr_svn7768_4807"
><td id="4807"><a href="#4807">4807</a></td></tr
><tr id="gr_svn7768_4808"
><td id="4808"><a href="#4808">4808</a></td></tr
><tr id="gr_svn7768_4809"
><td id="4809"><a href="#4809">4809</a></td></tr
><tr id="gr_svn7768_4810"
><td id="4810"><a href="#4810">4810</a></td></tr
><tr id="gr_svn7768_4811"
><td id="4811"><a href="#4811">4811</a></td></tr
><tr id="gr_svn7768_4812"
><td id="4812"><a href="#4812">4812</a></td></tr
><tr id="gr_svn7768_4813"
><td id="4813"><a href="#4813">4813</a></td></tr
><tr id="gr_svn7768_4814"
><td id="4814"><a href="#4814">4814</a></td></tr
><tr id="gr_svn7768_4815"
><td id="4815"><a href="#4815">4815</a></td></tr
><tr id="gr_svn7768_4816"
><td id="4816"><a href="#4816">4816</a></td></tr
><tr id="gr_svn7768_4817"
><td id="4817"><a href="#4817">4817</a></td></tr
><tr id="gr_svn7768_4818"
><td id="4818"><a href="#4818">4818</a></td></tr
><tr id="gr_svn7768_4819"
><td id="4819"><a href="#4819">4819</a></td></tr
><tr id="gr_svn7768_4820"
><td id="4820"><a href="#4820">4820</a></td></tr
><tr id="gr_svn7768_4821"
><td id="4821"><a href="#4821">4821</a></td></tr
><tr id="gr_svn7768_4822"
><td id="4822"><a href="#4822">4822</a></td></tr
><tr id="gr_svn7768_4823"
><td id="4823"><a href="#4823">4823</a></td></tr
><tr id="gr_svn7768_4824"
><td id="4824"><a href="#4824">4824</a></td></tr
><tr id="gr_svn7768_4825"
><td id="4825"><a href="#4825">4825</a></td></tr
><tr id="gr_svn7768_4826"
><td id="4826"><a href="#4826">4826</a></td></tr
><tr id="gr_svn7768_4827"
><td id="4827"><a href="#4827">4827</a></td></tr
><tr id="gr_svn7768_4828"
><td id="4828"><a href="#4828">4828</a></td></tr
><tr id="gr_svn7768_4829"
><td id="4829"><a href="#4829">4829</a></td></tr
><tr id="gr_svn7768_4830"
><td id="4830"><a href="#4830">4830</a></td></tr
><tr id="gr_svn7768_4831"
><td id="4831"><a href="#4831">4831</a></td></tr
><tr id="gr_svn7768_4832"
><td id="4832"><a href="#4832">4832</a></td></tr
><tr id="gr_svn7768_4833"
><td id="4833"><a href="#4833">4833</a></td></tr
><tr id="gr_svn7768_4834"
><td id="4834"><a href="#4834">4834</a></td></tr
><tr id="gr_svn7768_4835"
><td id="4835"><a href="#4835">4835</a></td></tr
><tr id="gr_svn7768_4836"
><td id="4836"><a href="#4836">4836</a></td></tr
><tr id="gr_svn7768_4837"
><td id="4837"><a href="#4837">4837</a></td></tr
><tr id="gr_svn7768_4838"
><td id="4838"><a href="#4838">4838</a></td></tr
><tr id="gr_svn7768_4839"
><td id="4839"><a href="#4839">4839</a></td></tr
><tr id="gr_svn7768_4840"
><td id="4840"><a href="#4840">4840</a></td></tr
><tr id="gr_svn7768_4841"
><td id="4841"><a href="#4841">4841</a></td></tr
><tr id="gr_svn7768_4842"
><td id="4842"><a href="#4842">4842</a></td></tr
><tr id="gr_svn7768_4843"
><td id="4843"><a href="#4843">4843</a></td></tr
><tr id="gr_svn7768_4844"
><td id="4844"><a href="#4844">4844</a></td></tr
><tr id="gr_svn7768_4845"
><td id="4845"><a href="#4845">4845</a></td></tr
><tr id="gr_svn7768_4846"
><td id="4846"><a href="#4846">4846</a></td></tr
><tr id="gr_svn7768_4847"
><td id="4847"><a href="#4847">4847</a></td></tr
><tr id="gr_svn7768_4848"
><td id="4848"><a href="#4848">4848</a></td></tr
><tr id="gr_svn7768_4849"
><td id="4849"><a href="#4849">4849</a></td></tr
><tr id="gr_svn7768_4850"
><td id="4850"><a href="#4850">4850</a></td></tr
><tr id="gr_svn7768_4851"
><td id="4851"><a href="#4851">4851</a></td></tr
><tr id="gr_svn7768_4852"
><td id="4852"><a href="#4852">4852</a></td></tr
><tr id="gr_svn7768_4853"
><td id="4853"><a href="#4853">4853</a></td></tr
><tr id="gr_svn7768_4854"
><td id="4854"><a href="#4854">4854</a></td></tr
><tr id="gr_svn7768_4855"
><td id="4855"><a href="#4855">4855</a></td></tr
><tr id="gr_svn7768_4856"
><td id="4856"><a href="#4856">4856</a></td></tr
><tr id="gr_svn7768_4857"
><td id="4857"><a href="#4857">4857</a></td></tr
><tr id="gr_svn7768_4858"
><td id="4858"><a href="#4858">4858</a></td></tr
><tr id="gr_svn7768_4859"
><td id="4859"><a href="#4859">4859</a></td></tr
><tr id="gr_svn7768_4860"
><td id="4860"><a href="#4860">4860</a></td></tr
><tr id="gr_svn7768_4861"
><td id="4861"><a href="#4861">4861</a></td></tr
><tr id="gr_svn7768_4862"
><td id="4862"><a href="#4862">4862</a></td></tr
><tr id="gr_svn7768_4863"
><td id="4863"><a href="#4863">4863</a></td></tr
><tr id="gr_svn7768_4864"
><td id="4864"><a href="#4864">4864</a></td></tr
><tr id="gr_svn7768_4865"
><td id="4865"><a href="#4865">4865</a></td></tr
><tr id="gr_svn7768_4866"
><td id="4866"><a href="#4866">4866</a></td></tr
><tr id="gr_svn7768_4867"
><td id="4867"><a href="#4867">4867</a></td></tr
><tr id="gr_svn7768_4868"
><td id="4868"><a href="#4868">4868</a></td></tr
><tr id="gr_svn7768_4869"
><td id="4869"><a href="#4869">4869</a></td></tr
><tr id="gr_svn7768_4870"
><td id="4870"><a href="#4870">4870</a></td></tr
><tr id="gr_svn7768_4871"
><td id="4871"><a href="#4871">4871</a></td></tr
><tr id="gr_svn7768_4872"
><td id="4872"><a href="#4872">4872</a></td></tr
><tr id="gr_svn7768_4873"
><td id="4873"><a href="#4873">4873</a></td></tr
><tr id="gr_svn7768_4874"
><td id="4874"><a href="#4874">4874</a></td></tr
><tr id="gr_svn7768_4875"
><td id="4875"><a href="#4875">4875</a></td></tr
><tr id="gr_svn7768_4876"
><td id="4876"><a href="#4876">4876</a></td></tr
><tr id="gr_svn7768_4877"
><td id="4877"><a href="#4877">4877</a></td></tr
><tr id="gr_svn7768_4878"
><td id="4878"><a href="#4878">4878</a></td></tr
><tr id="gr_svn7768_4879"
><td id="4879"><a href="#4879">4879</a></td></tr
><tr id="gr_svn7768_4880"
><td id="4880"><a href="#4880">4880</a></td></tr
><tr id="gr_svn7768_4881"
><td id="4881"><a href="#4881">4881</a></td></tr
><tr id="gr_svn7768_4882"
><td id="4882"><a href="#4882">4882</a></td></tr
><tr id="gr_svn7768_4883"
><td id="4883"><a href="#4883">4883</a></td></tr
><tr id="gr_svn7768_4884"
><td id="4884"><a href="#4884">4884</a></td></tr
><tr id="gr_svn7768_4885"
><td id="4885"><a href="#4885">4885</a></td></tr
><tr id="gr_svn7768_4886"
><td id="4886"><a href="#4886">4886</a></td></tr
><tr id="gr_svn7768_4887"
><td id="4887"><a href="#4887">4887</a></td></tr
><tr id="gr_svn7768_4888"
><td id="4888"><a href="#4888">4888</a></td></tr
><tr id="gr_svn7768_4889"
><td id="4889"><a href="#4889">4889</a></td></tr
><tr id="gr_svn7768_4890"
><td id="4890"><a href="#4890">4890</a></td></tr
><tr id="gr_svn7768_4891"
><td id="4891"><a href="#4891">4891</a></td></tr
><tr id="gr_svn7768_4892"
><td id="4892"><a href="#4892">4892</a></td></tr
><tr id="gr_svn7768_4893"
><td id="4893"><a href="#4893">4893</a></td></tr
><tr id="gr_svn7768_4894"
><td id="4894"><a href="#4894">4894</a></td></tr
><tr id="gr_svn7768_4895"
><td id="4895"><a href="#4895">4895</a></td></tr
><tr id="gr_svn7768_4896"
><td id="4896"><a href="#4896">4896</a></td></tr
><tr id="gr_svn7768_4897"
><td id="4897"><a href="#4897">4897</a></td></tr
><tr id="gr_svn7768_4898"
><td id="4898"><a href="#4898">4898</a></td></tr
><tr id="gr_svn7768_4899"
><td id="4899"><a href="#4899">4899</a></td></tr
><tr id="gr_svn7768_4900"
><td id="4900"><a href="#4900">4900</a></td></tr
><tr id="gr_svn7768_4901"
><td id="4901"><a href="#4901">4901</a></td></tr
><tr id="gr_svn7768_4902"
><td id="4902"><a href="#4902">4902</a></td></tr
><tr id="gr_svn7768_4903"
><td id="4903"><a href="#4903">4903</a></td></tr
><tr id="gr_svn7768_4904"
><td id="4904"><a href="#4904">4904</a></td></tr
><tr id="gr_svn7768_4905"
><td id="4905"><a href="#4905">4905</a></td></tr
><tr id="gr_svn7768_4906"
><td id="4906"><a href="#4906">4906</a></td></tr
><tr id="gr_svn7768_4907"
><td id="4907"><a href="#4907">4907</a></td></tr
><tr id="gr_svn7768_4908"
><td id="4908"><a href="#4908">4908</a></td></tr
><tr id="gr_svn7768_4909"
><td id="4909"><a href="#4909">4909</a></td></tr
><tr id="gr_svn7768_4910"
><td id="4910"><a href="#4910">4910</a></td></tr
><tr id="gr_svn7768_4911"
><td id="4911"><a href="#4911">4911</a></td></tr
><tr id="gr_svn7768_4912"
><td id="4912"><a href="#4912">4912</a></td></tr
><tr id="gr_svn7768_4913"
><td id="4913"><a href="#4913">4913</a></td></tr
><tr id="gr_svn7768_4914"
><td id="4914"><a href="#4914">4914</a></td></tr
><tr id="gr_svn7768_4915"
><td id="4915"><a href="#4915">4915</a></td></tr
><tr id="gr_svn7768_4916"
><td id="4916"><a href="#4916">4916</a></td></tr
><tr id="gr_svn7768_4917"
><td id="4917"><a href="#4917">4917</a></td></tr
><tr id="gr_svn7768_4918"
><td id="4918"><a href="#4918">4918</a></td></tr
><tr id="gr_svn7768_4919"
><td id="4919"><a href="#4919">4919</a></td></tr
><tr id="gr_svn7768_4920"
><td id="4920"><a href="#4920">4920</a></td></tr
><tr id="gr_svn7768_4921"
><td id="4921"><a href="#4921">4921</a></td></tr
><tr id="gr_svn7768_4922"
><td id="4922"><a href="#4922">4922</a></td></tr
><tr id="gr_svn7768_4923"
><td id="4923"><a href="#4923">4923</a></td></tr
><tr id="gr_svn7768_4924"
><td id="4924"><a href="#4924">4924</a></td></tr
><tr id="gr_svn7768_4925"
><td id="4925"><a href="#4925">4925</a></td></tr
><tr id="gr_svn7768_4926"
><td id="4926"><a href="#4926">4926</a></td></tr
><tr id="gr_svn7768_4927"
><td id="4927"><a href="#4927">4927</a></td></tr
><tr id="gr_svn7768_4928"
><td id="4928"><a href="#4928">4928</a></td></tr
><tr id="gr_svn7768_4929"
><td id="4929"><a href="#4929">4929</a></td></tr
><tr id="gr_svn7768_4930"
><td id="4930"><a href="#4930">4930</a></td></tr
><tr id="gr_svn7768_4931"
><td id="4931"><a href="#4931">4931</a></td></tr
><tr id="gr_svn7768_4932"
><td id="4932"><a href="#4932">4932</a></td></tr
><tr id="gr_svn7768_4933"
><td id="4933"><a href="#4933">4933</a></td></tr
><tr id="gr_svn7768_4934"
><td id="4934"><a href="#4934">4934</a></td></tr
><tr id="gr_svn7768_4935"
><td id="4935"><a href="#4935">4935</a></td></tr
><tr id="gr_svn7768_4936"
><td id="4936"><a href="#4936">4936</a></td></tr
><tr id="gr_svn7768_4937"
><td id="4937"><a href="#4937">4937</a></td></tr
><tr id="gr_svn7768_4938"
><td id="4938"><a href="#4938">4938</a></td></tr
><tr id="gr_svn7768_4939"
><td id="4939"><a href="#4939">4939</a></td></tr
><tr id="gr_svn7768_4940"
><td id="4940"><a href="#4940">4940</a></td></tr
><tr id="gr_svn7768_4941"
><td id="4941"><a href="#4941">4941</a></td></tr
><tr id="gr_svn7768_4942"
><td id="4942"><a href="#4942">4942</a></td></tr
><tr id="gr_svn7768_4943"
><td id="4943"><a href="#4943">4943</a></td></tr
><tr id="gr_svn7768_4944"
><td id="4944"><a href="#4944">4944</a></td></tr
><tr id="gr_svn7768_4945"
><td id="4945"><a href="#4945">4945</a></td></tr
><tr id="gr_svn7768_4946"
><td id="4946"><a href="#4946">4946</a></td></tr
><tr id="gr_svn7768_4947"
><td id="4947"><a href="#4947">4947</a></td></tr
><tr id="gr_svn7768_4948"
><td id="4948"><a href="#4948">4948</a></td></tr
><tr id="gr_svn7768_4949"
><td id="4949"><a href="#4949">4949</a></td></tr
><tr id="gr_svn7768_4950"
><td id="4950"><a href="#4950">4950</a></td></tr
><tr id="gr_svn7768_4951"
><td id="4951"><a href="#4951">4951</a></td></tr
><tr id="gr_svn7768_4952"
><td id="4952"><a href="#4952">4952</a></td></tr
><tr id="gr_svn7768_4953"
><td id="4953"><a href="#4953">4953</a></td></tr
><tr id="gr_svn7768_4954"
><td id="4954"><a href="#4954">4954</a></td></tr
><tr id="gr_svn7768_4955"
><td id="4955"><a href="#4955">4955</a></td></tr
><tr id="gr_svn7768_4956"
><td id="4956"><a href="#4956">4956</a></td></tr
><tr id="gr_svn7768_4957"
><td id="4957"><a href="#4957">4957</a></td></tr
><tr id="gr_svn7768_4958"
><td id="4958"><a href="#4958">4958</a></td></tr
><tr id="gr_svn7768_4959"
><td id="4959"><a href="#4959">4959</a></td></tr
><tr id="gr_svn7768_4960"
><td id="4960"><a href="#4960">4960</a></td></tr
><tr id="gr_svn7768_4961"
><td id="4961"><a href="#4961">4961</a></td></tr
><tr id="gr_svn7768_4962"
><td id="4962"><a href="#4962">4962</a></td></tr
><tr id="gr_svn7768_4963"
><td id="4963"><a href="#4963">4963</a></td></tr
><tr id="gr_svn7768_4964"
><td id="4964"><a href="#4964">4964</a></td></tr
><tr id="gr_svn7768_4965"
><td id="4965"><a href="#4965">4965</a></td></tr
><tr id="gr_svn7768_4966"
><td id="4966"><a href="#4966">4966</a></td></tr
><tr id="gr_svn7768_4967"
><td id="4967"><a href="#4967">4967</a></td></tr
><tr id="gr_svn7768_4968"
><td id="4968"><a href="#4968">4968</a></td></tr
><tr id="gr_svn7768_4969"
><td id="4969"><a href="#4969">4969</a></td></tr
><tr id="gr_svn7768_4970"
><td id="4970"><a href="#4970">4970</a></td></tr
><tr id="gr_svn7768_4971"
><td id="4971"><a href="#4971">4971</a></td></tr
><tr id="gr_svn7768_4972"
><td id="4972"><a href="#4972">4972</a></td></tr
><tr id="gr_svn7768_4973"
><td id="4973"><a href="#4973">4973</a></td></tr
><tr id="gr_svn7768_4974"
><td id="4974"><a href="#4974">4974</a></td></tr
><tr id="gr_svn7768_4975"
><td id="4975"><a href="#4975">4975</a></td></tr
><tr id="gr_svn7768_4976"
><td id="4976"><a href="#4976">4976</a></td></tr
><tr id="gr_svn7768_4977"
><td id="4977"><a href="#4977">4977</a></td></tr
><tr id="gr_svn7768_4978"
><td id="4978"><a href="#4978">4978</a></td></tr
><tr id="gr_svn7768_4979"
><td id="4979"><a href="#4979">4979</a></td></tr
><tr id="gr_svn7768_4980"
><td id="4980"><a href="#4980">4980</a></td></tr
><tr id="gr_svn7768_4981"
><td id="4981"><a href="#4981">4981</a></td></tr
><tr id="gr_svn7768_4982"
><td id="4982"><a href="#4982">4982</a></td></tr
><tr id="gr_svn7768_4983"
><td id="4983"><a href="#4983">4983</a></td></tr
><tr id="gr_svn7768_4984"
><td id="4984"><a href="#4984">4984</a></td></tr
><tr id="gr_svn7768_4985"
><td id="4985"><a href="#4985">4985</a></td></tr
><tr id="gr_svn7768_4986"
><td id="4986"><a href="#4986">4986</a></td></tr
><tr id="gr_svn7768_4987"
><td id="4987"><a href="#4987">4987</a></td></tr
><tr id="gr_svn7768_4988"
><td id="4988"><a href="#4988">4988</a></td></tr
><tr id="gr_svn7768_4989"
><td id="4989"><a href="#4989">4989</a></td></tr
><tr id="gr_svn7768_4990"
><td id="4990"><a href="#4990">4990</a></td></tr
><tr id="gr_svn7768_4991"
><td id="4991"><a href="#4991">4991</a></td></tr
><tr id="gr_svn7768_4992"
><td id="4992"><a href="#4992">4992</a></td></tr
><tr id="gr_svn7768_4993"
><td id="4993"><a href="#4993">4993</a></td></tr
><tr id="gr_svn7768_4994"
><td id="4994"><a href="#4994">4994</a></td></tr
><tr id="gr_svn7768_4995"
><td id="4995"><a href="#4995">4995</a></td></tr
><tr id="gr_svn7768_4996"
><td id="4996"><a href="#4996">4996</a></td></tr
><tr id="gr_svn7768_4997"
><td id="4997"><a href="#4997">4997</a></td></tr
><tr id="gr_svn7768_4998"
><td id="4998"><a href="#4998">4998</a></td></tr
><tr id="gr_svn7768_4999"
><td id="4999"><a href="#4999">4999</a></td></tr
><tr id="gr_svn7768_5000"
><td id="5000"><a href="#5000">5000</a></td></tr
><tr id="gr_svn7768_5001"
><td id="5001"><a href="#5001">5001</a></td></tr
><tr id="gr_svn7768_5002"
><td id="5002"><a href="#5002">5002</a></td></tr
><tr id="gr_svn7768_5003"
><td id="5003"><a href="#5003">5003</a></td></tr
><tr id="gr_svn7768_5004"
><td id="5004"><a href="#5004">5004</a></td></tr
><tr id="gr_svn7768_5005"
><td id="5005"><a href="#5005">5005</a></td></tr
><tr id="gr_svn7768_5006"
><td id="5006"><a href="#5006">5006</a></td></tr
><tr id="gr_svn7768_5007"
><td id="5007"><a href="#5007">5007</a></td></tr
><tr id="gr_svn7768_5008"
><td id="5008"><a href="#5008">5008</a></td></tr
><tr id="gr_svn7768_5009"
><td id="5009"><a href="#5009">5009</a></td></tr
><tr id="gr_svn7768_5010"
><td id="5010"><a href="#5010">5010</a></td></tr
><tr id="gr_svn7768_5011"
><td id="5011"><a href="#5011">5011</a></td></tr
><tr id="gr_svn7768_5012"
><td id="5012"><a href="#5012">5012</a></td></tr
><tr id="gr_svn7768_5013"
><td id="5013"><a href="#5013">5013</a></td></tr
><tr id="gr_svn7768_5014"
><td id="5014"><a href="#5014">5014</a></td></tr
><tr id="gr_svn7768_5015"
><td id="5015"><a href="#5015">5015</a></td></tr
><tr id="gr_svn7768_5016"
><td id="5016"><a href="#5016">5016</a></td></tr
><tr id="gr_svn7768_5017"
><td id="5017"><a href="#5017">5017</a></td></tr
><tr id="gr_svn7768_5018"
><td id="5018"><a href="#5018">5018</a></td></tr
><tr id="gr_svn7768_5019"
><td id="5019"><a href="#5019">5019</a></td></tr
><tr id="gr_svn7768_5020"
><td id="5020"><a href="#5020">5020</a></td></tr
><tr id="gr_svn7768_5021"
><td id="5021"><a href="#5021">5021</a></td></tr
><tr id="gr_svn7768_5022"
><td id="5022"><a href="#5022">5022</a></td></tr
><tr id="gr_svn7768_5023"
><td id="5023"><a href="#5023">5023</a></td></tr
><tr id="gr_svn7768_5024"
><td id="5024"><a href="#5024">5024</a></td></tr
><tr id="gr_svn7768_5025"
><td id="5025"><a href="#5025">5025</a></td></tr
><tr id="gr_svn7768_5026"
><td id="5026"><a href="#5026">5026</a></td></tr
><tr id="gr_svn7768_5027"
><td id="5027"><a href="#5027">5027</a></td></tr
><tr id="gr_svn7768_5028"
><td id="5028"><a href="#5028">5028</a></td></tr
><tr id="gr_svn7768_5029"
><td id="5029"><a href="#5029">5029</a></td></tr
><tr id="gr_svn7768_5030"
><td id="5030"><a href="#5030">5030</a></td></tr
><tr id="gr_svn7768_5031"
><td id="5031"><a href="#5031">5031</a></td></tr
><tr id="gr_svn7768_5032"
><td id="5032"><a href="#5032">5032</a></td></tr
><tr id="gr_svn7768_5033"
><td id="5033"><a href="#5033">5033</a></td></tr
><tr id="gr_svn7768_5034"
><td id="5034"><a href="#5034">5034</a></td></tr
><tr id="gr_svn7768_5035"
><td id="5035"><a href="#5035">5035</a></td></tr
><tr id="gr_svn7768_5036"
><td id="5036"><a href="#5036">5036</a></td></tr
><tr id="gr_svn7768_5037"
><td id="5037"><a href="#5037">5037</a></td></tr
><tr id="gr_svn7768_5038"
><td id="5038"><a href="#5038">5038</a></td></tr
><tr id="gr_svn7768_5039"
><td id="5039"><a href="#5039">5039</a></td></tr
><tr id="gr_svn7768_5040"
><td id="5040"><a href="#5040">5040</a></td></tr
><tr id="gr_svn7768_5041"
><td id="5041"><a href="#5041">5041</a></td></tr
><tr id="gr_svn7768_5042"
><td id="5042"><a href="#5042">5042</a></td></tr
><tr id="gr_svn7768_5043"
><td id="5043"><a href="#5043">5043</a></td></tr
><tr id="gr_svn7768_5044"
><td id="5044"><a href="#5044">5044</a></td></tr
><tr id="gr_svn7768_5045"
><td id="5045"><a href="#5045">5045</a></td></tr
><tr id="gr_svn7768_5046"
><td id="5046"><a href="#5046">5046</a></td></tr
><tr id="gr_svn7768_5047"
><td id="5047"><a href="#5047">5047</a></td></tr
><tr id="gr_svn7768_5048"
><td id="5048"><a href="#5048">5048</a></td></tr
><tr id="gr_svn7768_5049"
><td id="5049"><a href="#5049">5049</a></td></tr
><tr id="gr_svn7768_5050"
><td id="5050"><a href="#5050">5050</a></td></tr
><tr id="gr_svn7768_5051"
><td id="5051"><a href="#5051">5051</a></td></tr
><tr id="gr_svn7768_5052"
><td id="5052"><a href="#5052">5052</a></td></tr
><tr id="gr_svn7768_5053"
><td id="5053"><a href="#5053">5053</a></td></tr
><tr id="gr_svn7768_5054"
><td id="5054"><a href="#5054">5054</a></td></tr
><tr id="gr_svn7768_5055"
><td id="5055"><a href="#5055">5055</a></td></tr
><tr id="gr_svn7768_5056"
><td id="5056"><a href="#5056">5056</a></td></tr
><tr id="gr_svn7768_5057"
><td id="5057"><a href="#5057">5057</a></td></tr
><tr id="gr_svn7768_5058"
><td id="5058"><a href="#5058">5058</a></td></tr
><tr id="gr_svn7768_5059"
><td id="5059"><a href="#5059">5059</a></td></tr
><tr id="gr_svn7768_5060"
><td id="5060"><a href="#5060">5060</a></td></tr
><tr id="gr_svn7768_5061"
><td id="5061"><a href="#5061">5061</a></td></tr
><tr id="gr_svn7768_5062"
><td id="5062"><a href="#5062">5062</a></td></tr
><tr id="gr_svn7768_5063"
><td id="5063"><a href="#5063">5063</a></td></tr
><tr id="gr_svn7768_5064"
><td id="5064"><a href="#5064">5064</a></td></tr
><tr id="gr_svn7768_5065"
><td id="5065"><a href="#5065">5065</a></td></tr
><tr id="gr_svn7768_5066"
><td id="5066"><a href="#5066">5066</a></td></tr
><tr id="gr_svn7768_5067"
><td id="5067"><a href="#5067">5067</a></td></tr
><tr id="gr_svn7768_5068"
><td id="5068"><a href="#5068">5068</a></td></tr
><tr id="gr_svn7768_5069"
><td id="5069"><a href="#5069">5069</a></td></tr
><tr id="gr_svn7768_5070"
><td id="5070"><a href="#5070">5070</a></td></tr
><tr id="gr_svn7768_5071"
><td id="5071"><a href="#5071">5071</a></td></tr
><tr id="gr_svn7768_5072"
><td id="5072"><a href="#5072">5072</a></td></tr
><tr id="gr_svn7768_5073"
><td id="5073"><a href="#5073">5073</a></td></tr
><tr id="gr_svn7768_5074"
><td id="5074"><a href="#5074">5074</a></td></tr
><tr id="gr_svn7768_5075"
><td id="5075"><a href="#5075">5075</a></td></tr
><tr id="gr_svn7768_5076"
><td id="5076"><a href="#5076">5076</a></td></tr
><tr id="gr_svn7768_5077"
><td id="5077"><a href="#5077">5077</a></td></tr
><tr id="gr_svn7768_5078"
><td id="5078"><a href="#5078">5078</a></td></tr
><tr id="gr_svn7768_5079"
><td id="5079"><a href="#5079">5079</a></td></tr
><tr id="gr_svn7768_5080"
><td id="5080"><a href="#5080">5080</a></td></tr
><tr id="gr_svn7768_5081"
><td id="5081"><a href="#5081">5081</a></td></tr
><tr id="gr_svn7768_5082"
><td id="5082"><a href="#5082">5082</a></td></tr
><tr id="gr_svn7768_5083"
><td id="5083"><a href="#5083">5083</a></td></tr
><tr id="gr_svn7768_5084"
><td id="5084"><a href="#5084">5084</a></td></tr
><tr id="gr_svn7768_5085"
><td id="5085"><a href="#5085">5085</a></td></tr
><tr id="gr_svn7768_5086"
><td id="5086"><a href="#5086">5086</a></td></tr
><tr id="gr_svn7768_5087"
><td id="5087"><a href="#5087">5087</a></td></tr
><tr id="gr_svn7768_5088"
><td id="5088"><a href="#5088">5088</a></td></tr
><tr id="gr_svn7768_5089"
><td id="5089"><a href="#5089">5089</a></td></tr
><tr id="gr_svn7768_5090"
><td id="5090"><a href="#5090">5090</a></td></tr
><tr id="gr_svn7768_5091"
><td id="5091"><a href="#5091">5091</a></td></tr
><tr id="gr_svn7768_5092"
><td id="5092"><a href="#5092">5092</a></td></tr
><tr id="gr_svn7768_5093"
><td id="5093"><a href="#5093">5093</a></td></tr
><tr id="gr_svn7768_5094"
><td id="5094"><a href="#5094">5094</a></td></tr
><tr id="gr_svn7768_5095"
><td id="5095"><a href="#5095">5095</a></td></tr
><tr id="gr_svn7768_5096"
><td id="5096"><a href="#5096">5096</a></td></tr
><tr id="gr_svn7768_5097"
><td id="5097"><a href="#5097">5097</a></td></tr
><tr id="gr_svn7768_5098"
><td id="5098"><a href="#5098">5098</a></td></tr
><tr id="gr_svn7768_5099"
><td id="5099"><a href="#5099">5099</a></td></tr
><tr id="gr_svn7768_5100"
><td id="5100"><a href="#5100">5100</a></td></tr
><tr id="gr_svn7768_5101"
><td id="5101"><a href="#5101">5101</a></td></tr
><tr id="gr_svn7768_5102"
><td id="5102"><a href="#5102">5102</a></td></tr
><tr id="gr_svn7768_5103"
><td id="5103"><a href="#5103">5103</a></td></tr
><tr id="gr_svn7768_5104"
><td id="5104"><a href="#5104">5104</a></td></tr
><tr id="gr_svn7768_5105"
><td id="5105"><a href="#5105">5105</a></td></tr
><tr id="gr_svn7768_5106"
><td id="5106"><a href="#5106">5106</a></td></tr
><tr id="gr_svn7768_5107"
><td id="5107"><a href="#5107">5107</a></td></tr
><tr id="gr_svn7768_5108"
><td id="5108"><a href="#5108">5108</a></td></tr
><tr id="gr_svn7768_5109"
><td id="5109"><a href="#5109">5109</a></td></tr
><tr id="gr_svn7768_5110"
><td id="5110"><a href="#5110">5110</a></td></tr
><tr id="gr_svn7768_5111"
><td id="5111"><a href="#5111">5111</a></td></tr
><tr id="gr_svn7768_5112"
><td id="5112"><a href="#5112">5112</a></td></tr
><tr id="gr_svn7768_5113"
><td id="5113"><a href="#5113">5113</a></td></tr
><tr id="gr_svn7768_5114"
><td id="5114"><a href="#5114">5114</a></td></tr
><tr id="gr_svn7768_5115"
><td id="5115"><a href="#5115">5115</a></td></tr
><tr id="gr_svn7768_5116"
><td id="5116"><a href="#5116">5116</a></td></tr
><tr id="gr_svn7768_5117"
><td id="5117"><a href="#5117">5117</a></td></tr
><tr id="gr_svn7768_5118"
><td id="5118"><a href="#5118">5118</a></td></tr
><tr id="gr_svn7768_5119"
><td id="5119"><a href="#5119">5119</a></td></tr
><tr id="gr_svn7768_5120"
><td id="5120"><a href="#5120">5120</a></td></tr
><tr id="gr_svn7768_5121"
><td id="5121"><a href="#5121">5121</a></td></tr
><tr id="gr_svn7768_5122"
><td id="5122"><a href="#5122">5122</a></td></tr
><tr id="gr_svn7768_5123"
><td id="5123"><a href="#5123">5123</a></td></tr
><tr id="gr_svn7768_5124"
><td id="5124"><a href="#5124">5124</a></td></tr
><tr id="gr_svn7768_5125"
><td id="5125"><a href="#5125">5125</a></td></tr
><tr id="gr_svn7768_5126"
><td id="5126"><a href="#5126">5126</a></td></tr
><tr id="gr_svn7768_5127"
><td id="5127"><a href="#5127">5127</a></td></tr
><tr id="gr_svn7768_5128"
><td id="5128"><a href="#5128">5128</a></td></tr
><tr id="gr_svn7768_5129"
><td id="5129"><a href="#5129">5129</a></td></tr
><tr id="gr_svn7768_5130"
><td id="5130"><a href="#5130">5130</a></td></tr
><tr id="gr_svn7768_5131"
><td id="5131"><a href="#5131">5131</a></td></tr
><tr id="gr_svn7768_5132"
><td id="5132"><a href="#5132">5132</a></td></tr
><tr id="gr_svn7768_5133"
><td id="5133"><a href="#5133">5133</a></td></tr
><tr id="gr_svn7768_5134"
><td id="5134"><a href="#5134">5134</a></td></tr
><tr id="gr_svn7768_5135"
><td id="5135"><a href="#5135">5135</a></td></tr
><tr id="gr_svn7768_5136"
><td id="5136"><a href="#5136">5136</a></td></tr
><tr id="gr_svn7768_5137"
><td id="5137"><a href="#5137">5137</a></td></tr
><tr id="gr_svn7768_5138"
><td id="5138"><a href="#5138">5138</a></td></tr
><tr id="gr_svn7768_5139"
><td id="5139"><a href="#5139">5139</a></td></tr
><tr id="gr_svn7768_5140"
><td id="5140"><a href="#5140">5140</a></td></tr
><tr id="gr_svn7768_5141"
><td id="5141"><a href="#5141">5141</a></td></tr
><tr id="gr_svn7768_5142"
><td id="5142"><a href="#5142">5142</a></td></tr
><tr id="gr_svn7768_5143"
><td id="5143"><a href="#5143">5143</a></td></tr
><tr id="gr_svn7768_5144"
><td id="5144"><a href="#5144">5144</a></td></tr
><tr id="gr_svn7768_5145"
><td id="5145"><a href="#5145">5145</a></td></tr
><tr id="gr_svn7768_5146"
><td id="5146"><a href="#5146">5146</a></td></tr
><tr id="gr_svn7768_5147"
><td id="5147"><a href="#5147">5147</a></td></tr
><tr id="gr_svn7768_5148"
><td id="5148"><a href="#5148">5148</a></td></tr
><tr id="gr_svn7768_5149"
><td id="5149"><a href="#5149">5149</a></td></tr
><tr id="gr_svn7768_5150"
><td id="5150"><a href="#5150">5150</a></td></tr
><tr id="gr_svn7768_5151"
><td id="5151"><a href="#5151">5151</a></td></tr
><tr id="gr_svn7768_5152"
><td id="5152"><a href="#5152">5152</a></td></tr
><tr id="gr_svn7768_5153"
><td id="5153"><a href="#5153">5153</a></td></tr
><tr id="gr_svn7768_5154"
><td id="5154"><a href="#5154">5154</a></td></tr
><tr id="gr_svn7768_5155"
><td id="5155"><a href="#5155">5155</a></td></tr
><tr id="gr_svn7768_5156"
><td id="5156"><a href="#5156">5156</a></td></tr
><tr id="gr_svn7768_5157"
><td id="5157"><a href="#5157">5157</a></td></tr
><tr id="gr_svn7768_5158"
><td id="5158"><a href="#5158">5158</a></td></tr
><tr id="gr_svn7768_5159"
><td id="5159"><a href="#5159">5159</a></td></tr
><tr id="gr_svn7768_5160"
><td id="5160"><a href="#5160">5160</a></td></tr
><tr id="gr_svn7768_5161"
><td id="5161"><a href="#5161">5161</a></td></tr
><tr id="gr_svn7768_5162"
><td id="5162"><a href="#5162">5162</a></td></tr
><tr id="gr_svn7768_5163"
><td id="5163"><a href="#5163">5163</a></td></tr
><tr id="gr_svn7768_5164"
><td id="5164"><a href="#5164">5164</a></td></tr
><tr id="gr_svn7768_5165"
><td id="5165"><a href="#5165">5165</a></td></tr
><tr id="gr_svn7768_5166"
><td id="5166"><a href="#5166">5166</a></td></tr
><tr id="gr_svn7768_5167"
><td id="5167"><a href="#5167">5167</a></td></tr
><tr id="gr_svn7768_5168"
><td id="5168"><a href="#5168">5168</a></td></tr
><tr id="gr_svn7768_5169"
><td id="5169"><a href="#5169">5169</a></td></tr
><tr id="gr_svn7768_5170"
><td id="5170"><a href="#5170">5170</a></td></tr
><tr id="gr_svn7768_5171"
><td id="5171"><a href="#5171">5171</a></td></tr
><tr id="gr_svn7768_5172"
><td id="5172"><a href="#5172">5172</a></td></tr
><tr id="gr_svn7768_5173"
><td id="5173"><a href="#5173">5173</a></td></tr
><tr id="gr_svn7768_5174"
><td id="5174"><a href="#5174">5174</a></td></tr
><tr id="gr_svn7768_5175"
><td id="5175"><a href="#5175">5175</a></td></tr
><tr id="gr_svn7768_5176"
><td id="5176"><a href="#5176">5176</a></td></tr
><tr id="gr_svn7768_5177"
><td id="5177"><a href="#5177">5177</a></td></tr
><tr id="gr_svn7768_5178"
><td id="5178"><a href="#5178">5178</a></td></tr
><tr id="gr_svn7768_5179"
><td id="5179"><a href="#5179">5179</a></td></tr
><tr id="gr_svn7768_5180"
><td id="5180"><a href="#5180">5180</a></td></tr
><tr id="gr_svn7768_5181"
><td id="5181"><a href="#5181">5181</a></td></tr
><tr id="gr_svn7768_5182"
><td id="5182"><a href="#5182">5182</a></td></tr
><tr id="gr_svn7768_5183"
><td id="5183"><a href="#5183">5183</a></td></tr
><tr id="gr_svn7768_5184"
><td id="5184"><a href="#5184">5184</a></td></tr
><tr id="gr_svn7768_5185"
><td id="5185"><a href="#5185">5185</a></td></tr
><tr id="gr_svn7768_5186"
><td id="5186"><a href="#5186">5186</a></td></tr
><tr id="gr_svn7768_5187"
><td id="5187"><a href="#5187">5187</a></td></tr
><tr id="gr_svn7768_5188"
><td id="5188"><a href="#5188">5188</a></td></tr
><tr id="gr_svn7768_5189"
><td id="5189"><a href="#5189">5189</a></td></tr
><tr id="gr_svn7768_5190"
><td id="5190"><a href="#5190">5190</a></td></tr
><tr id="gr_svn7768_5191"
><td id="5191"><a href="#5191">5191</a></td></tr
><tr id="gr_svn7768_5192"
><td id="5192"><a href="#5192">5192</a></td></tr
><tr id="gr_svn7768_5193"
><td id="5193"><a href="#5193">5193</a></td></tr
><tr id="gr_svn7768_5194"
><td id="5194"><a href="#5194">5194</a></td></tr
><tr id="gr_svn7768_5195"
><td id="5195"><a href="#5195">5195</a></td></tr
><tr id="gr_svn7768_5196"
><td id="5196"><a href="#5196">5196</a></td></tr
><tr id="gr_svn7768_5197"
><td id="5197"><a href="#5197">5197</a></td></tr
><tr id="gr_svn7768_5198"
><td id="5198"><a href="#5198">5198</a></td></tr
><tr id="gr_svn7768_5199"
><td id="5199"><a href="#5199">5199</a></td></tr
><tr id="gr_svn7768_5200"
><td id="5200"><a href="#5200">5200</a></td></tr
><tr id="gr_svn7768_5201"
><td id="5201"><a href="#5201">5201</a></td></tr
><tr id="gr_svn7768_5202"
><td id="5202"><a href="#5202">5202</a></td></tr
><tr id="gr_svn7768_5203"
><td id="5203"><a href="#5203">5203</a></td></tr
><tr id="gr_svn7768_5204"
><td id="5204"><a href="#5204">5204</a></td></tr
><tr id="gr_svn7768_5205"
><td id="5205"><a href="#5205">5205</a></td></tr
><tr id="gr_svn7768_5206"
><td id="5206"><a href="#5206">5206</a></td></tr
><tr id="gr_svn7768_5207"
><td id="5207"><a href="#5207">5207</a></td></tr
><tr id="gr_svn7768_5208"
><td id="5208"><a href="#5208">5208</a></td></tr
><tr id="gr_svn7768_5209"
><td id="5209"><a href="#5209">5209</a></td></tr
><tr id="gr_svn7768_5210"
><td id="5210"><a href="#5210">5210</a></td></tr
><tr id="gr_svn7768_5211"
><td id="5211"><a href="#5211">5211</a></td></tr
><tr id="gr_svn7768_5212"
><td id="5212"><a href="#5212">5212</a></td></tr
><tr id="gr_svn7768_5213"
><td id="5213"><a href="#5213">5213</a></td></tr
><tr id="gr_svn7768_5214"
><td id="5214"><a href="#5214">5214</a></td></tr
><tr id="gr_svn7768_5215"
><td id="5215"><a href="#5215">5215</a></td></tr
><tr id="gr_svn7768_5216"
><td id="5216"><a href="#5216">5216</a></td></tr
><tr id="gr_svn7768_5217"
><td id="5217"><a href="#5217">5217</a></td></tr
><tr id="gr_svn7768_5218"
><td id="5218"><a href="#5218">5218</a></td></tr
><tr id="gr_svn7768_5219"
><td id="5219"><a href="#5219">5219</a></td></tr
><tr id="gr_svn7768_5220"
><td id="5220"><a href="#5220">5220</a></td></tr
><tr id="gr_svn7768_5221"
><td id="5221"><a href="#5221">5221</a></td></tr
><tr id="gr_svn7768_5222"
><td id="5222"><a href="#5222">5222</a></td></tr
><tr id="gr_svn7768_5223"
><td id="5223"><a href="#5223">5223</a></td></tr
><tr id="gr_svn7768_5224"
><td id="5224"><a href="#5224">5224</a></td></tr
><tr id="gr_svn7768_5225"
><td id="5225"><a href="#5225">5225</a></td></tr
><tr id="gr_svn7768_5226"
><td id="5226"><a href="#5226">5226</a></td></tr
><tr id="gr_svn7768_5227"
><td id="5227"><a href="#5227">5227</a></td></tr
><tr id="gr_svn7768_5228"
><td id="5228"><a href="#5228">5228</a></td></tr
><tr id="gr_svn7768_5229"
><td id="5229"><a href="#5229">5229</a></td></tr
><tr id="gr_svn7768_5230"
><td id="5230"><a href="#5230">5230</a></td></tr
><tr id="gr_svn7768_5231"
><td id="5231"><a href="#5231">5231</a></td></tr
><tr id="gr_svn7768_5232"
><td id="5232"><a href="#5232">5232</a></td></tr
><tr id="gr_svn7768_5233"
><td id="5233"><a href="#5233">5233</a></td></tr
><tr id="gr_svn7768_5234"
><td id="5234"><a href="#5234">5234</a></td></tr
><tr id="gr_svn7768_5235"
><td id="5235"><a href="#5235">5235</a></td></tr
><tr id="gr_svn7768_5236"
><td id="5236"><a href="#5236">5236</a></td></tr
><tr id="gr_svn7768_5237"
><td id="5237"><a href="#5237">5237</a></td></tr
><tr id="gr_svn7768_5238"
><td id="5238"><a href="#5238">5238</a></td></tr
><tr id="gr_svn7768_5239"
><td id="5239"><a href="#5239">5239</a></td></tr
><tr id="gr_svn7768_5240"
><td id="5240"><a href="#5240">5240</a></td></tr
><tr id="gr_svn7768_5241"
><td id="5241"><a href="#5241">5241</a></td></tr
><tr id="gr_svn7768_5242"
><td id="5242"><a href="#5242">5242</a></td></tr
><tr id="gr_svn7768_5243"
><td id="5243"><a href="#5243">5243</a></td></tr
><tr id="gr_svn7768_5244"
><td id="5244"><a href="#5244">5244</a></td></tr
><tr id="gr_svn7768_5245"
><td id="5245"><a href="#5245">5245</a></td></tr
><tr id="gr_svn7768_5246"
><td id="5246"><a href="#5246">5246</a></td></tr
><tr id="gr_svn7768_5247"
><td id="5247"><a href="#5247">5247</a></td></tr
><tr id="gr_svn7768_5248"
><td id="5248"><a href="#5248">5248</a></td></tr
><tr id="gr_svn7768_5249"
><td id="5249"><a href="#5249">5249</a></td></tr
><tr id="gr_svn7768_5250"
><td id="5250"><a href="#5250">5250</a></td></tr
><tr id="gr_svn7768_5251"
><td id="5251"><a href="#5251">5251</a></td></tr
><tr id="gr_svn7768_5252"
><td id="5252"><a href="#5252">5252</a></td></tr
><tr id="gr_svn7768_5253"
><td id="5253"><a href="#5253">5253</a></td></tr
><tr id="gr_svn7768_5254"
><td id="5254"><a href="#5254">5254</a></td></tr
><tr id="gr_svn7768_5255"
><td id="5255"><a href="#5255">5255</a></td></tr
><tr id="gr_svn7768_5256"
><td id="5256"><a href="#5256">5256</a></td></tr
><tr id="gr_svn7768_5257"
><td id="5257"><a href="#5257">5257</a></td></tr
><tr id="gr_svn7768_5258"
><td id="5258"><a href="#5258">5258</a></td></tr
><tr id="gr_svn7768_5259"
><td id="5259"><a href="#5259">5259</a></td></tr
><tr id="gr_svn7768_5260"
><td id="5260"><a href="#5260">5260</a></td></tr
><tr id="gr_svn7768_5261"
><td id="5261"><a href="#5261">5261</a></td></tr
><tr id="gr_svn7768_5262"
><td id="5262"><a href="#5262">5262</a></td></tr
><tr id="gr_svn7768_5263"
><td id="5263"><a href="#5263">5263</a></td></tr
><tr id="gr_svn7768_5264"
><td id="5264"><a href="#5264">5264</a></td></tr
><tr id="gr_svn7768_5265"
><td id="5265"><a href="#5265">5265</a></td></tr
><tr id="gr_svn7768_5266"
><td id="5266"><a href="#5266">5266</a></td></tr
><tr id="gr_svn7768_5267"
><td id="5267"><a href="#5267">5267</a></td></tr
><tr id="gr_svn7768_5268"
><td id="5268"><a href="#5268">5268</a></td></tr
><tr id="gr_svn7768_5269"
><td id="5269"><a href="#5269">5269</a></td></tr
><tr id="gr_svn7768_5270"
><td id="5270"><a href="#5270">5270</a></td></tr
><tr id="gr_svn7768_5271"
><td id="5271"><a href="#5271">5271</a></td></tr
><tr id="gr_svn7768_5272"
><td id="5272"><a href="#5272">5272</a></td></tr
><tr id="gr_svn7768_5273"
><td id="5273"><a href="#5273">5273</a></td></tr
><tr id="gr_svn7768_5274"
><td id="5274"><a href="#5274">5274</a></td></tr
><tr id="gr_svn7768_5275"
><td id="5275"><a href="#5275">5275</a></td></tr
><tr id="gr_svn7768_5276"
><td id="5276"><a href="#5276">5276</a></td></tr
><tr id="gr_svn7768_5277"
><td id="5277"><a href="#5277">5277</a></td></tr
><tr id="gr_svn7768_5278"
><td id="5278"><a href="#5278">5278</a></td></tr
><tr id="gr_svn7768_5279"
><td id="5279"><a href="#5279">5279</a></td></tr
><tr id="gr_svn7768_5280"
><td id="5280"><a href="#5280">5280</a></td></tr
><tr id="gr_svn7768_5281"
><td id="5281"><a href="#5281">5281</a></td></tr
><tr id="gr_svn7768_5282"
><td id="5282"><a href="#5282">5282</a></td></tr
><tr id="gr_svn7768_5283"
><td id="5283"><a href="#5283">5283</a></td></tr
><tr id="gr_svn7768_5284"
><td id="5284"><a href="#5284">5284</a></td></tr
><tr id="gr_svn7768_5285"
><td id="5285"><a href="#5285">5285</a></td></tr
><tr id="gr_svn7768_5286"
><td id="5286"><a href="#5286">5286</a></td></tr
><tr id="gr_svn7768_5287"
><td id="5287"><a href="#5287">5287</a></td></tr
><tr id="gr_svn7768_5288"
><td id="5288"><a href="#5288">5288</a></td></tr
><tr id="gr_svn7768_5289"
><td id="5289"><a href="#5289">5289</a></td></tr
><tr id="gr_svn7768_5290"
><td id="5290"><a href="#5290">5290</a></td></tr
><tr id="gr_svn7768_5291"
><td id="5291"><a href="#5291">5291</a></td></tr
><tr id="gr_svn7768_5292"
><td id="5292"><a href="#5292">5292</a></td></tr
><tr id="gr_svn7768_5293"
><td id="5293"><a href="#5293">5293</a></td></tr
><tr id="gr_svn7768_5294"
><td id="5294"><a href="#5294">5294</a></td></tr
><tr id="gr_svn7768_5295"
><td id="5295"><a href="#5295">5295</a></td></tr
><tr id="gr_svn7768_5296"
><td id="5296"><a href="#5296">5296</a></td></tr
><tr id="gr_svn7768_5297"
><td id="5297"><a href="#5297">5297</a></td></tr
><tr id="gr_svn7768_5298"
><td id="5298"><a href="#5298">5298</a></td></tr
><tr id="gr_svn7768_5299"
><td id="5299"><a href="#5299">5299</a></td></tr
><tr id="gr_svn7768_5300"
><td id="5300"><a href="#5300">5300</a></td></tr
><tr id="gr_svn7768_5301"
><td id="5301"><a href="#5301">5301</a></td></tr
><tr id="gr_svn7768_5302"
><td id="5302"><a href="#5302">5302</a></td></tr
><tr id="gr_svn7768_5303"
><td id="5303"><a href="#5303">5303</a></td></tr
><tr id="gr_svn7768_5304"
><td id="5304"><a href="#5304">5304</a></td></tr
><tr id="gr_svn7768_5305"
><td id="5305"><a href="#5305">5305</a></td></tr
><tr id="gr_svn7768_5306"
><td id="5306"><a href="#5306">5306</a></td></tr
><tr id="gr_svn7768_5307"
><td id="5307"><a href="#5307">5307</a></td></tr
><tr id="gr_svn7768_5308"
><td id="5308"><a href="#5308">5308</a></td></tr
><tr id="gr_svn7768_5309"
><td id="5309"><a href="#5309">5309</a></td></tr
><tr id="gr_svn7768_5310"
><td id="5310"><a href="#5310">5310</a></td></tr
><tr id="gr_svn7768_5311"
><td id="5311"><a href="#5311">5311</a></td></tr
><tr id="gr_svn7768_5312"
><td id="5312"><a href="#5312">5312</a></td></tr
><tr id="gr_svn7768_5313"
><td id="5313"><a href="#5313">5313</a></td></tr
><tr id="gr_svn7768_5314"
><td id="5314"><a href="#5314">5314</a></td></tr
><tr id="gr_svn7768_5315"
><td id="5315"><a href="#5315">5315</a></td></tr
><tr id="gr_svn7768_5316"
><td id="5316"><a href="#5316">5316</a></td></tr
><tr id="gr_svn7768_5317"
><td id="5317"><a href="#5317">5317</a></td></tr
><tr id="gr_svn7768_5318"
><td id="5318"><a href="#5318">5318</a></td></tr
><tr id="gr_svn7768_5319"
><td id="5319"><a href="#5319">5319</a></td></tr
><tr id="gr_svn7768_5320"
><td id="5320"><a href="#5320">5320</a></td></tr
><tr id="gr_svn7768_5321"
><td id="5321"><a href="#5321">5321</a></td></tr
><tr id="gr_svn7768_5322"
><td id="5322"><a href="#5322">5322</a></td></tr
><tr id="gr_svn7768_5323"
><td id="5323"><a href="#5323">5323</a></td></tr
><tr id="gr_svn7768_5324"
><td id="5324"><a href="#5324">5324</a></td></tr
><tr id="gr_svn7768_5325"
><td id="5325"><a href="#5325">5325</a></td></tr
><tr id="gr_svn7768_5326"
><td id="5326"><a href="#5326">5326</a></td></tr
><tr id="gr_svn7768_5327"
><td id="5327"><a href="#5327">5327</a></td></tr
><tr id="gr_svn7768_5328"
><td id="5328"><a href="#5328">5328</a></td></tr
><tr id="gr_svn7768_5329"
><td id="5329"><a href="#5329">5329</a></td></tr
><tr id="gr_svn7768_5330"
><td id="5330"><a href="#5330">5330</a></td></tr
><tr id="gr_svn7768_5331"
><td id="5331"><a href="#5331">5331</a></td></tr
><tr id="gr_svn7768_5332"
><td id="5332"><a href="#5332">5332</a></td></tr
><tr id="gr_svn7768_5333"
><td id="5333"><a href="#5333">5333</a></td></tr
><tr id="gr_svn7768_5334"
><td id="5334"><a href="#5334">5334</a></td></tr
><tr id="gr_svn7768_5335"
><td id="5335"><a href="#5335">5335</a></td></tr
><tr id="gr_svn7768_5336"
><td id="5336"><a href="#5336">5336</a></td></tr
><tr id="gr_svn7768_5337"
><td id="5337"><a href="#5337">5337</a></td></tr
><tr id="gr_svn7768_5338"
><td id="5338"><a href="#5338">5338</a></td></tr
><tr id="gr_svn7768_5339"
><td id="5339"><a href="#5339">5339</a></td></tr
><tr id="gr_svn7768_5340"
><td id="5340"><a href="#5340">5340</a></td></tr
><tr id="gr_svn7768_5341"
><td id="5341"><a href="#5341">5341</a></td></tr
><tr id="gr_svn7768_5342"
><td id="5342"><a href="#5342">5342</a></td></tr
><tr id="gr_svn7768_5343"
><td id="5343"><a href="#5343">5343</a></td></tr
><tr id="gr_svn7768_5344"
><td id="5344"><a href="#5344">5344</a></td></tr
><tr id="gr_svn7768_5345"
><td id="5345"><a href="#5345">5345</a></td></tr
><tr id="gr_svn7768_5346"
><td id="5346"><a href="#5346">5346</a></td></tr
><tr id="gr_svn7768_5347"
><td id="5347"><a href="#5347">5347</a></td></tr
><tr id="gr_svn7768_5348"
><td id="5348"><a href="#5348">5348</a></td></tr
><tr id="gr_svn7768_5349"
><td id="5349"><a href="#5349">5349</a></td></tr
><tr id="gr_svn7768_5350"
><td id="5350"><a href="#5350">5350</a></td></tr
><tr id="gr_svn7768_5351"
><td id="5351"><a href="#5351">5351</a></td></tr
><tr id="gr_svn7768_5352"
><td id="5352"><a href="#5352">5352</a></td></tr
><tr id="gr_svn7768_5353"
><td id="5353"><a href="#5353">5353</a></td></tr
><tr id="gr_svn7768_5354"
><td id="5354"><a href="#5354">5354</a></td></tr
><tr id="gr_svn7768_5355"
><td id="5355"><a href="#5355">5355</a></td></tr
><tr id="gr_svn7768_5356"
><td id="5356"><a href="#5356">5356</a></td></tr
><tr id="gr_svn7768_5357"
><td id="5357"><a href="#5357">5357</a></td></tr
><tr id="gr_svn7768_5358"
><td id="5358"><a href="#5358">5358</a></td></tr
><tr id="gr_svn7768_5359"
><td id="5359"><a href="#5359">5359</a></td></tr
><tr id="gr_svn7768_5360"
><td id="5360"><a href="#5360">5360</a></td></tr
><tr id="gr_svn7768_5361"
><td id="5361"><a href="#5361">5361</a></td></tr
><tr id="gr_svn7768_5362"
><td id="5362"><a href="#5362">5362</a></td></tr
><tr id="gr_svn7768_5363"
><td id="5363"><a href="#5363">5363</a></td></tr
><tr id="gr_svn7768_5364"
><td id="5364"><a href="#5364">5364</a></td></tr
><tr id="gr_svn7768_5365"
><td id="5365"><a href="#5365">5365</a></td></tr
><tr id="gr_svn7768_5366"
><td id="5366"><a href="#5366">5366</a></td></tr
><tr id="gr_svn7768_5367"
><td id="5367"><a href="#5367">5367</a></td></tr
><tr id="gr_svn7768_5368"
><td id="5368"><a href="#5368">5368</a></td></tr
><tr id="gr_svn7768_5369"
><td id="5369"><a href="#5369">5369</a></td></tr
><tr id="gr_svn7768_5370"
><td id="5370"><a href="#5370">5370</a></td></tr
><tr id="gr_svn7768_5371"
><td id="5371"><a href="#5371">5371</a></td></tr
><tr id="gr_svn7768_5372"
><td id="5372"><a href="#5372">5372</a></td></tr
><tr id="gr_svn7768_5373"
><td id="5373"><a href="#5373">5373</a></td></tr
><tr id="gr_svn7768_5374"
><td id="5374"><a href="#5374">5374</a></td></tr
><tr id="gr_svn7768_5375"
><td id="5375"><a href="#5375">5375</a></td></tr
><tr id="gr_svn7768_5376"
><td id="5376"><a href="#5376">5376</a></td></tr
><tr id="gr_svn7768_5377"
><td id="5377"><a href="#5377">5377</a></td></tr
><tr id="gr_svn7768_5378"
><td id="5378"><a href="#5378">5378</a></td></tr
><tr id="gr_svn7768_5379"
><td id="5379"><a href="#5379">5379</a></td></tr
><tr id="gr_svn7768_5380"
><td id="5380"><a href="#5380">5380</a></td></tr
><tr id="gr_svn7768_5381"
><td id="5381"><a href="#5381">5381</a></td></tr
><tr id="gr_svn7768_5382"
><td id="5382"><a href="#5382">5382</a></td></tr
><tr id="gr_svn7768_5383"
><td id="5383"><a href="#5383">5383</a></td></tr
><tr id="gr_svn7768_5384"
><td id="5384"><a href="#5384">5384</a></td></tr
><tr id="gr_svn7768_5385"
><td id="5385"><a href="#5385">5385</a></td></tr
><tr id="gr_svn7768_5386"
><td id="5386"><a href="#5386">5386</a></td></tr
><tr id="gr_svn7768_5387"
><td id="5387"><a href="#5387">5387</a></td></tr
><tr id="gr_svn7768_5388"
><td id="5388"><a href="#5388">5388</a></td></tr
><tr id="gr_svn7768_5389"
><td id="5389"><a href="#5389">5389</a></td></tr
><tr id="gr_svn7768_5390"
><td id="5390"><a href="#5390">5390</a></td></tr
><tr id="gr_svn7768_5391"
><td id="5391"><a href="#5391">5391</a></td></tr
><tr id="gr_svn7768_5392"
><td id="5392"><a href="#5392">5392</a></td></tr
><tr id="gr_svn7768_5393"
><td id="5393"><a href="#5393">5393</a></td></tr
><tr id="gr_svn7768_5394"
><td id="5394"><a href="#5394">5394</a></td></tr
><tr id="gr_svn7768_5395"
><td id="5395"><a href="#5395">5395</a></td></tr
><tr id="gr_svn7768_5396"
><td id="5396"><a href="#5396">5396</a></td></tr
><tr id="gr_svn7768_5397"
><td id="5397"><a href="#5397">5397</a></td></tr
><tr id="gr_svn7768_5398"
><td id="5398"><a href="#5398">5398</a></td></tr
><tr id="gr_svn7768_5399"
><td id="5399"><a href="#5399">5399</a></td></tr
><tr id="gr_svn7768_5400"
><td id="5400"><a href="#5400">5400</a></td></tr
><tr id="gr_svn7768_5401"
><td id="5401"><a href="#5401">5401</a></td></tr
><tr id="gr_svn7768_5402"
><td id="5402"><a href="#5402">5402</a></td></tr
><tr id="gr_svn7768_5403"
><td id="5403"><a href="#5403">5403</a></td></tr
><tr id="gr_svn7768_5404"
><td id="5404"><a href="#5404">5404</a></td></tr
><tr id="gr_svn7768_5405"
><td id="5405"><a href="#5405">5405</a></td></tr
><tr id="gr_svn7768_5406"
><td id="5406"><a href="#5406">5406</a></td></tr
><tr id="gr_svn7768_5407"
><td id="5407"><a href="#5407">5407</a></td></tr
><tr id="gr_svn7768_5408"
><td id="5408"><a href="#5408">5408</a></td></tr
><tr id="gr_svn7768_5409"
><td id="5409"><a href="#5409">5409</a></td></tr
><tr id="gr_svn7768_5410"
><td id="5410"><a href="#5410">5410</a></td></tr
><tr id="gr_svn7768_5411"
><td id="5411"><a href="#5411">5411</a></td></tr
><tr id="gr_svn7768_5412"
><td id="5412"><a href="#5412">5412</a></td></tr
><tr id="gr_svn7768_5413"
><td id="5413"><a href="#5413">5413</a></td></tr
><tr id="gr_svn7768_5414"
><td id="5414"><a href="#5414">5414</a></td></tr
><tr id="gr_svn7768_5415"
><td id="5415"><a href="#5415">5415</a></td></tr
><tr id="gr_svn7768_5416"
><td id="5416"><a href="#5416">5416</a></td></tr
><tr id="gr_svn7768_5417"
><td id="5417"><a href="#5417">5417</a></td></tr
><tr id="gr_svn7768_5418"
><td id="5418"><a href="#5418">5418</a></td></tr
><tr id="gr_svn7768_5419"
><td id="5419"><a href="#5419">5419</a></td></tr
><tr id="gr_svn7768_5420"
><td id="5420"><a href="#5420">5420</a></td></tr
><tr id="gr_svn7768_5421"
><td id="5421"><a href="#5421">5421</a></td></tr
><tr id="gr_svn7768_5422"
><td id="5422"><a href="#5422">5422</a></td></tr
><tr id="gr_svn7768_5423"
><td id="5423"><a href="#5423">5423</a></td></tr
><tr id="gr_svn7768_5424"
><td id="5424"><a href="#5424">5424</a></td></tr
><tr id="gr_svn7768_5425"
><td id="5425"><a href="#5425">5425</a></td></tr
><tr id="gr_svn7768_5426"
><td id="5426"><a href="#5426">5426</a></td></tr
><tr id="gr_svn7768_5427"
><td id="5427"><a href="#5427">5427</a></td></tr
><tr id="gr_svn7768_5428"
><td id="5428"><a href="#5428">5428</a></td></tr
><tr id="gr_svn7768_5429"
><td id="5429"><a href="#5429">5429</a></td></tr
><tr id="gr_svn7768_5430"
><td id="5430"><a href="#5430">5430</a></td></tr
><tr id="gr_svn7768_5431"
><td id="5431"><a href="#5431">5431</a></td></tr
><tr id="gr_svn7768_5432"
><td id="5432"><a href="#5432">5432</a></td></tr
><tr id="gr_svn7768_5433"
><td id="5433"><a href="#5433">5433</a></td></tr
><tr id="gr_svn7768_5434"
><td id="5434"><a href="#5434">5434</a></td></tr
><tr id="gr_svn7768_5435"
><td id="5435"><a href="#5435">5435</a></td></tr
><tr id="gr_svn7768_5436"
><td id="5436"><a href="#5436">5436</a></td></tr
><tr id="gr_svn7768_5437"
><td id="5437"><a href="#5437">5437</a></td></tr
><tr id="gr_svn7768_5438"
><td id="5438"><a href="#5438">5438</a></td></tr
><tr id="gr_svn7768_5439"
><td id="5439"><a href="#5439">5439</a></td></tr
><tr id="gr_svn7768_5440"
><td id="5440"><a href="#5440">5440</a></td></tr
><tr id="gr_svn7768_5441"
><td id="5441"><a href="#5441">5441</a></td></tr
><tr id="gr_svn7768_5442"
><td id="5442"><a href="#5442">5442</a></td></tr
><tr id="gr_svn7768_5443"
><td id="5443"><a href="#5443">5443</a></td></tr
><tr id="gr_svn7768_5444"
><td id="5444"><a href="#5444">5444</a></td></tr
><tr id="gr_svn7768_5445"
><td id="5445"><a href="#5445">5445</a></td></tr
><tr id="gr_svn7768_5446"
><td id="5446"><a href="#5446">5446</a></td></tr
><tr id="gr_svn7768_5447"
><td id="5447"><a href="#5447">5447</a></td></tr
><tr id="gr_svn7768_5448"
><td id="5448"><a href="#5448">5448</a></td></tr
><tr id="gr_svn7768_5449"
><td id="5449"><a href="#5449">5449</a></td></tr
><tr id="gr_svn7768_5450"
><td id="5450"><a href="#5450">5450</a></td></tr
><tr id="gr_svn7768_5451"
><td id="5451"><a href="#5451">5451</a></td></tr
><tr id="gr_svn7768_5452"
><td id="5452"><a href="#5452">5452</a></td></tr
><tr id="gr_svn7768_5453"
><td id="5453"><a href="#5453">5453</a></td></tr
><tr id="gr_svn7768_5454"
><td id="5454"><a href="#5454">5454</a></td></tr
><tr id="gr_svn7768_5455"
><td id="5455"><a href="#5455">5455</a></td></tr
><tr id="gr_svn7768_5456"
><td id="5456"><a href="#5456">5456</a></td></tr
><tr id="gr_svn7768_5457"
><td id="5457"><a href="#5457">5457</a></td></tr
><tr id="gr_svn7768_5458"
><td id="5458"><a href="#5458">5458</a></td></tr
><tr id="gr_svn7768_5459"
><td id="5459"><a href="#5459">5459</a></td></tr
><tr id="gr_svn7768_5460"
><td id="5460"><a href="#5460">5460</a></td></tr
><tr id="gr_svn7768_5461"
><td id="5461"><a href="#5461">5461</a></td></tr
><tr id="gr_svn7768_5462"
><td id="5462"><a href="#5462">5462</a></td></tr
><tr id="gr_svn7768_5463"
><td id="5463"><a href="#5463">5463</a></td></tr
><tr id="gr_svn7768_5464"
><td id="5464"><a href="#5464">5464</a></td></tr
><tr id="gr_svn7768_5465"
><td id="5465"><a href="#5465">5465</a></td></tr
><tr id="gr_svn7768_5466"
><td id="5466"><a href="#5466">5466</a></td></tr
><tr id="gr_svn7768_5467"
><td id="5467"><a href="#5467">5467</a></td></tr
><tr id="gr_svn7768_5468"
><td id="5468"><a href="#5468">5468</a></td></tr
><tr id="gr_svn7768_5469"
><td id="5469"><a href="#5469">5469</a></td></tr
><tr id="gr_svn7768_5470"
><td id="5470"><a href="#5470">5470</a></td></tr
><tr id="gr_svn7768_5471"
><td id="5471"><a href="#5471">5471</a></td></tr
><tr id="gr_svn7768_5472"
><td id="5472"><a href="#5472">5472</a></td></tr
><tr id="gr_svn7768_5473"
><td id="5473"><a href="#5473">5473</a></td></tr
><tr id="gr_svn7768_5474"
><td id="5474"><a href="#5474">5474</a></td></tr
><tr id="gr_svn7768_5475"
><td id="5475"><a href="#5475">5475</a></td></tr
><tr id="gr_svn7768_5476"
><td id="5476"><a href="#5476">5476</a></td></tr
><tr id="gr_svn7768_5477"
><td id="5477"><a href="#5477">5477</a></td></tr
><tr id="gr_svn7768_5478"
><td id="5478"><a href="#5478">5478</a></td></tr
><tr id="gr_svn7768_5479"
><td id="5479"><a href="#5479">5479</a></td></tr
><tr id="gr_svn7768_5480"
><td id="5480"><a href="#5480">5480</a></td></tr
><tr id="gr_svn7768_5481"
><td id="5481"><a href="#5481">5481</a></td></tr
><tr id="gr_svn7768_5482"
><td id="5482"><a href="#5482">5482</a></td></tr
><tr id="gr_svn7768_5483"
><td id="5483"><a href="#5483">5483</a></td></tr
><tr id="gr_svn7768_5484"
><td id="5484"><a href="#5484">5484</a></td></tr
><tr id="gr_svn7768_5485"
><td id="5485"><a href="#5485">5485</a></td></tr
><tr id="gr_svn7768_5486"
><td id="5486"><a href="#5486">5486</a></td></tr
><tr id="gr_svn7768_5487"
><td id="5487"><a href="#5487">5487</a></td></tr
><tr id="gr_svn7768_5488"
><td id="5488"><a href="#5488">5488</a></td></tr
><tr id="gr_svn7768_5489"
><td id="5489"><a href="#5489">5489</a></td></tr
><tr id="gr_svn7768_5490"
><td id="5490"><a href="#5490">5490</a></td></tr
><tr id="gr_svn7768_5491"
><td id="5491"><a href="#5491">5491</a></td></tr
><tr id="gr_svn7768_5492"
><td id="5492"><a href="#5492">5492</a></td></tr
><tr id="gr_svn7768_5493"
><td id="5493"><a href="#5493">5493</a></td></tr
><tr id="gr_svn7768_5494"
><td id="5494"><a href="#5494">5494</a></td></tr
><tr id="gr_svn7768_5495"
><td id="5495"><a href="#5495">5495</a></td></tr
><tr id="gr_svn7768_5496"
><td id="5496"><a href="#5496">5496</a></td></tr
><tr id="gr_svn7768_5497"
><td id="5497"><a href="#5497">5497</a></td></tr
><tr id="gr_svn7768_5498"
><td id="5498"><a href="#5498">5498</a></td></tr
><tr id="gr_svn7768_5499"
><td id="5499"><a href="#5499">5499</a></td></tr
><tr id="gr_svn7768_5500"
><td id="5500"><a href="#5500">5500</a></td></tr
><tr id="gr_svn7768_5501"
><td id="5501"><a href="#5501">5501</a></td></tr
><tr id="gr_svn7768_5502"
><td id="5502"><a href="#5502">5502</a></td></tr
><tr id="gr_svn7768_5503"
><td id="5503"><a href="#5503">5503</a></td></tr
><tr id="gr_svn7768_5504"
><td id="5504"><a href="#5504">5504</a></td></tr
><tr id="gr_svn7768_5505"
><td id="5505"><a href="#5505">5505</a></td></tr
><tr id="gr_svn7768_5506"
><td id="5506"><a href="#5506">5506</a></td></tr
><tr id="gr_svn7768_5507"
><td id="5507"><a href="#5507">5507</a></td></tr
><tr id="gr_svn7768_5508"
><td id="5508"><a href="#5508">5508</a></td></tr
><tr id="gr_svn7768_5509"
><td id="5509"><a href="#5509">5509</a></td></tr
><tr id="gr_svn7768_5510"
><td id="5510"><a href="#5510">5510</a></td></tr
><tr id="gr_svn7768_5511"
><td id="5511"><a href="#5511">5511</a></td></tr
><tr id="gr_svn7768_5512"
><td id="5512"><a href="#5512">5512</a></td></tr
><tr id="gr_svn7768_5513"
><td id="5513"><a href="#5513">5513</a></td></tr
><tr id="gr_svn7768_5514"
><td id="5514"><a href="#5514">5514</a></td></tr
><tr id="gr_svn7768_5515"
><td id="5515"><a href="#5515">5515</a></td></tr
><tr id="gr_svn7768_5516"
><td id="5516"><a href="#5516">5516</a></td></tr
><tr id="gr_svn7768_5517"
><td id="5517"><a href="#5517">5517</a></td></tr
><tr id="gr_svn7768_5518"
><td id="5518"><a href="#5518">5518</a></td></tr
><tr id="gr_svn7768_5519"
><td id="5519"><a href="#5519">5519</a></td></tr
><tr id="gr_svn7768_5520"
><td id="5520"><a href="#5520">5520</a></td></tr
><tr id="gr_svn7768_5521"
><td id="5521"><a href="#5521">5521</a></td></tr
><tr id="gr_svn7768_5522"
><td id="5522"><a href="#5522">5522</a></td></tr
><tr id="gr_svn7768_5523"
><td id="5523"><a href="#5523">5523</a></td></tr
><tr id="gr_svn7768_5524"
><td id="5524"><a href="#5524">5524</a></td></tr
><tr id="gr_svn7768_5525"
><td id="5525"><a href="#5525">5525</a></td></tr
><tr id="gr_svn7768_5526"
><td id="5526"><a href="#5526">5526</a></td></tr
><tr id="gr_svn7768_5527"
><td id="5527"><a href="#5527">5527</a></td></tr
><tr id="gr_svn7768_5528"
><td id="5528"><a href="#5528">5528</a></td></tr
><tr id="gr_svn7768_5529"
><td id="5529"><a href="#5529">5529</a></td></tr
><tr id="gr_svn7768_5530"
><td id="5530"><a href="#5530">5530</a></td></tr
><tr id="gr_svn7768_5531"
><td id="5531"><a href="#5531">5531</a></td></tr
><tr id="gr_svn7768_5532"
><td id="5532"><a href="#5532">5532</a></td></tr
><tr id="gr_svn7768_5533"
><td id="5533"><a href="#5533">5533</a></td></tr
><tr id="gr_svn7768_5534"
><td id="5534"><a href="#5534">5534</a></td></tr
><tr id="gr_svn7768_5535"
><td id="5535"><a href="#5535">5535</a></td></tr
><tr id="gr_svn7768_5536"
><td id="5536"><a href="#5536">5536</a></td></tr
><tr id="gr_svn7768_5537"
><td id="5537"><a href="#5537">5537</a></td></tr
><tr id="gr_svn7768_5538"
><td id="5538"><a href="#5538">5538</a></td></tr
><tr id="gr_svn7768_5539"
><td id="5539"><a href="#5539">5539</a></td></tr
><tr id="gr_svn7768_5540"
><td id="5540"><a href="#5540">5540</a></td></tr
><tr id="gr_svn7768_5541"
><td id="5541"><a href="#5541">5541</a></td></tr
><tr id="gr_svn7768_5542"
><td id="5542"><a href="#5542">5542</a></td></tr
><tr id="gr_svn7768_5543"
><td id="5543"><a href="#5543">5543</a></td></tr
><tr id="gr_svn7768_5544"
><td id="5544"><a href="#5544">5544</a></td></tr
><tr id="gr_svn7768_5545"
><td id="5545"><a href="#5545">5545</a></td></tr
><tr id="gr_svn7768_5546"
><td id="5546"><a href="#5546">5546</a></td></tr
><tr id="gr_svn7768_5547"
><td id="5547"><a href="#5547">5547</a></td></tr
><tr id="gr_svn7768_5548"
><td id="5548"><a href="#5548">5548</a></td></tr
><tr id="gr_svn7768_5549"
><td id="5549"><a href="#5549">5549</a></td></tr
><tr id="gr_svn7768_5550"
><td id="5550"><a href="#5550">5550</a></td></tr
><tr id="gr_svn7768_5551"
><td id="5551"><a href="#5551">5551</a></td></tr
><tr id="gr_svn7768_5552"
><td id="5552"><a href="#5552">5552</a></td></tr
><tr id="gr_svn7768_5553"
><td id="5553"><a href="#5553">5553</a></td></tr
><tr id="gr_svn7768_5554"
><td id="5554"><a href="#5554">5554</a></td></tr
><tr id="gr_svn7768_5555"
><td id="5555"><a href="#5555">5555</a></td></tr
><tr id="gr_svn7768_5556"
><td id="5556"><a href="#5556">5556</a></td></tr
><tr id="gr_svn7768_5557"
><td id="5557"><a href="#5557">5557</a></td></tr
><tr id="gr_svn7768_5558"
><td id="5558"><a href="#5558">5558</a></td></tr
><tr id="gr_svn7768_5559"
><td id="5559"><a href="#5559">5559</a></td></tr
><tr id="gr_svn7768_5560"
><td id="5560"><a href="#5560">5560</a></td></tr
><tr id="gr_svn7768_5561"
><td id="5561"><a href="#5561">5561</a></td></tr
><tr id="gr_svn7768_5562"
><td id="5562"><a href="#5562">5562</a></td></tr
><tr id="gr_svn7768_5563"
><td id="5563"><a href="#5563">5563</a></td></tr
><tr id="gr_svn7768_5564"
><td id="5564"><a href="#5564">5564</a></td></tr
><tr id="gr_svn7768_5565"
><td id="5565"><a href="#5565">5565</a></td></tr
><tr id="gr_svn7768_5566"
><td id="5566"><a href="#5566">5566</a></td></tr
><tr id="gr_svn7768_5567"
><td id="5567"><a href="#5567">5567</a></td></tr
><tr id="gr_svn7768_5568"
><td id="5568"><a href="#5568">5568</a></td></tr
><tr id="gr_svn7768_5569"
><td id="5569"><a href="#5569">5569</a></td></tr
><tr id="gr_svn7768_5570"
><td id="5570"><a href="#5570">5570</a></td></tr
><tr id="gr_svn7768_5571"
><td id="5571"><a href="#5571">5571</a></td></tr
><tr id="gr_svn7768_5572"
><td id="5572"><a href="#5572">5572</a></td></tr
><tr id="gr_svn7768_5573"
><td id="5573"><a href="#5573">5573</a></td></tr
><tr id="gr_svn7768_5574"
><td id="5574"><a href="#5574">5574</a></td></tr
><tr id="gr_svn7768_5575"
><td id="5575"><a href="#5575">5575</a></td></tr
><tr id="gr_svn7768_5576"
><td id="5576"><a href="#5576">5576</a></td></tr
><tr id="gr_svn7768_5577"
><td id="5577"><a href="#5577">5577</a></td></tr
><tr id="gr_svn7768_5578"
><td id="5578"><a href="#5578">5578</a></td></tr
><tr id="gr_svn7768_5579"
><td id="5579"><a href="#5579">5579</a></td></tr
><tr id="gr_svn7768_5580"
><td id="5580"><a href="#5580">5580</a></td></tr
><tr id="gr_svn7768_5581"
><td id="5581"><a href="#5581">5581</a></td></tr
><tr id="gr_svn7768_5582"
><td id="5582"><a href="#5582">5582</a></td></tr
><tr id="gr_svn7768_5583"
><td id="5583"><a href="#5583">5583</a></td></tr
><tr id="gr_svn7768_5584"
><td id="5584"><a href="#5584">5584</a></td></tr
><tr id="gr_svn7768_5585"
><td id="5585"><a href="#5585">5585</a></td></tr
><tr id="gr_svn7768_5586"
><td id="5586"><a href="#5586">5586</a></td></tr
><tr id="gr_svn7768_5587"
><td id="5587"><a href="#5587">5587</a></td></tr
><tr id="gr_svn7768_5588"
><td id="5588"><a href="#5588">5588</a></td></tr
><tr id="gr_svn7768_5589"
><td id="5589"><a href="#5589">5589</a></td></tr
><tr id="gr_svn7768_5590"
><td id="5590"><a href="#5590">5590</a></td></tr
><tr id="gr_svn7768_5591"
><td id="5591"><a href="#5591">5591</a></td></tr
><tr id="gr_svn7768_5592"
><td id="5592"><a href="#5592">5592</a></td></tr
><tr id="gr_svn7768_5593"
><td id="5593"><a href="#5593">5593</a></td></tr
><tr id="gr_svn7768_5594"
><td id="5594"><a href="#5594">5594</a></td></tr
><tr id="gr_svn7768_5595"
><td id="5595"><a href="#5595">5595</a></td></tr
><tr id="gr_svn7768_5596"
><td id="5596"><a href="#5596">5596</a></td></tr
><tr id="gr_svn7768_5597"
><td id="5597"><a href="#5597">5597</a></td></tr
><tr id="gr_svn7768_5598"
><td id="5598"><a href="#5598">5598</a></td></tr
><tr id="gr_svn7768_5599"
><td id="5599"><a href="#5599">5599</a></td></tr
><tr id="gr_svn7768_5600"
><td id="5600"><a href="#5600">5600</a></td></tr
><tr id="gr_svn7768_5601"
><td id="5601"><a href="#5601">5601</a></td></tr
><tr id="gr_svn7768_5602"
><td id="5602"><a href="#5602">5602</a></td></tr
><tr id="gr_svn7768_5603"
><td id="5603"><a href="#5603">5603</a></td></tr
><tr id="gr_svn7768_5604"
><td id="5604"><a href="#5604">5604</a></td></tr
><tr id="gr_svn7768_5605"
><td id="5605"><a href="#5605">5605</a></td></tr
><tr id="gr_svn7768_5606"
><td id="5606"><a href="#5606">5606</a></td></tr
><tr id="gr_svn7768_5607"
><td id="5607"><a href="#5607">5607</a></td></tr
><tr id="gr_svn7768_5608"
><td id="5608"><a href="#5608">5608</a></td></tr
><tr id="gr_svn7768_5609"
><td id="5609"><a href="#5609">5609</a></td></tr
><tr id="gr_svn7768_5610"
><td id="5610"><a href="#5610">5610</a></td></tr
><tr id="gr_svn7768_5611"
><td id="5611"><a href="#5611">5611</a></td></tr
><tr id="gr_svn7768_5612"
><td id="5612"><a href="#5612">5612</a></td></tr
><tr id="gr_svn7768_5613"
><td id="5613"><a href="#5613">5613</a></td></tr
><tr id="gr_svn7768_5614"
><td id="5614"><a href="#5614">5614</a></td></tr
><tr id="gr_svn7768_5615"
><td id="5615"><a href="#5615">5615</a></td></tr
><tr id="gr_svn7768_5616"
><td id="5616"><a href="#5616">5616</a></td></tr
><tr id="gr_svn7768_5617"
><td id="5617"><a href="#5617">5617</a></td></tr
><tr id="gr_svn7768_5618"
><td id="5618"><a href="#5618">5618</a></td></tr
><tr id="gr_svn7768_5619"
><td id="5619"><a href="#5619">5619</a></td></tr
><tr id="gr_svn7768_5620"
><td id="5620"><a href="#5620">5620</a></td></tr
><tr id="gr_svn7768_5621"
><td id="5621"><a href="#5621">5621</a></td></tr
><tr id="gr_svn7768_5622"
><td id="5622"><a href="#5622">5622</a></td></tr
><tr id="gr_svn7768_5623"
><td id="5623"><a href="#5623">5623</a></td></tr
><tr id="gr_svn7768_5624"
><td id="5624"><a href="#5624">5624</a></td></tr
><tr id="gr_svn7768_5625"
><td id="5625"><a href="#5625">5625</a></td></tr
><tr id="gr_svn7768_5626"
><td id="5626"><a href="#5626">5626</a></td></tr
><tr id="gr_svn7768_5627"
><td id="5627"><a href="#5627">5627</a></td></tr
><tr id="gr_svn7768_5628"
><td id="5628"><a href="#5628">5628</a></td></tr
><tr id="gr_svn7768_5629"
><td id="5629"><a href="#5629">5629</a></td></tr
><tr id="gr_svn7768_5630"
><td id="5630"><a href="#5630">5630</a></td></tr
><tr id="gr_svn7768_5631"
><td id="5631"><a href="#5631">5631</a></td></tr
><tr id="gr_svn7768_5632"
><td id="5632"><a href="#5632">5632</a></td></tr
><tr id="gr_svn7768_5633"
><td id="5633"><a href="#5633">5633</a></td></tr
><tr id="gr_svn7768_5634"
><td id="5634"><a href="#5634">5634</a></td></tr
><tr id="gr_svn7768_5635"
><td id="5635"><a href="#5635">5635</a></td></tr
><tr id="gr_svn7768_5636"
><td id="5636"><a href="#5636">5636</a></td></tr
><tr id="gr_svn7768_5637"
><td id="5637"><a href="#5637">5637</a></td></tr
><tr id="gr_svn7768_5638"
><td id="5638"><a href="#5638">5638</a></td></tr
><tr id="gr_svn7768_5639"
><td id="5639"><a href="#5639">5639</a></td></tr
><tr id="gr_svn7768_5640"
><td id="5640"><a href="#5640">5640</a></td></tr
><tr id="gr_svn7768_5641"
><td id="5641"><a href="#5641">5641</a></td></tr
><tr id="gr_svn7768_5642"
><td id="5642"><a href="#5642">5642</a></td></tr
><tr id="gr_svn7768_5643"
><td id="5643"><a href="#5643">5643</a></td></tr
><tr id="gr_svn7768_5644"
><td id="5644"><a href="#5644">5644</a></td></tr
><tr id="gr_svn7768_5645"
><td id="5645"><a href="#5645">5645</a></td></tr
><tr id="gr_svn7768_5646"
><td id="5646"><a href="#5646">5646</a></td></tr
><tr id="gr_svn7768_5647"
><td id="5647"><a href="#5647">5647</a></td></tr
><tr id="gr_svn7768_5648"
><td id="5648"><a href="#5648">5648</a></td></tr
><tr id="gr_svn7768_5649"
><td id="5649"><a href="#5649">5649</a></td></tr
><tr id="gr_svn7768_5650"
><td id="5650"><a href="#5650">5650</a></td></tr
><tr id="gr_svn7768_5651"
><td id="5651"><a href="#5651">5651</a></td></tr
><tr id="gr_svn7768_5652"
><td id="5652"><a href="#5652">5652</a></td></tr
><tr id="gr_svn7768_5653"
><td id="5653"><a href="#5653">5653</a></td></tr
><tr id="gr_svn7768_5654"
><td id="5654"><a href="#5654">5654</a></td></tr
><tr id="gr_svn7768_5655"
><td id="5655"><a href="#5655">5655</a></td></tr
><tr id="gr_svn7768_5656"
><td id="5656"><a href="#5656">5656</a></td></tr
><tr id="gr_svn7768_5657"
><td id="5657"><a href="#5657">5657</a></td></tr
><tr id="gr_svn7768_5658"
><td id="5658"><a href="#5658">5658</a></td></tr
><tr id="gr_svn7768_5659"
><td id="5659"><a href="#5659">5659</a></td></tr
><tr id="gr_svn7768_5660"
><td id="5660"><a href="#5660">5660</a></td></tr
><tr id="gr_svn7768_5661"
><td id="5661"><a href="#5661">5661</a></td></tr
><tr id="gr_svn7768_5662"
><td id="5662"><a href="#5662">5662</a></td></tr
><tr id="gr_svn7768_5663"
><td id="5663"><a href="#5663">5663</a></td></tr
><tr id="gr_svn7768_5664"
><td id="5664"><a href="#5664">5664</a></td></tr
><tr id="gr_svn7768_5665"
><td id="5665"><a href="#5665">5665</a></td></tr
><tr id="gr_svn7768_5666"
><td id="5666"><a href="#5666">5666</a></td></tr
><tr id="gr_svn7768_5667"
><td id="5667"><a href="#5667">5667</a></td></tr
><tr id="gr_svn7768_5668"
><td id="5668"><a href="#5668">5668</a></td></tr
><tr id="gr_svn7768_5669"
><td id="5669"><a href="#5669">5669</a></td></tr
><tr id="gr_svn7768_5670"
><td id="5670"><a href="#5670">5670</a></td></tr
><tr id="gr_svn7768_5671"
><td id="5671"><a href="#5671">5671</a></td></tr
><tr id="gr_svn7768_5672"
><td id="5672"><a href="#5672">5672</a></td></tr
><tr id="gr_svn7768_5673"
><td id="5673"><a href="#5673">5673</a></td></tr
><tr id="gr_svn7768_5674"
><td id="5674"><a href="#5674">5674</a></td></tr
><tr id="gr_svn7768_5675"
><td id="5675"><a href="#5675">5675</a></td></tr
><tr id="gr_svn7768_5676"
><td id="5676"><a href="#5676">5676</a></td></tr
><tr id="gr_svn7768_5677"
><td id="5677"><a href="#5677">5677</a></td></tr
><tr id="gr_svn7768_5678"
><td id="5678"><a href="#5678">5678</a></td></tr
><tr id="gr_svn7768_5679"
><td id="5679"><a href="#5679">5679</a></td></tr
><tr id="gr_svn7768_5680"
><td id="5680"><a href="#5680">5680</a></td></tr
><tr id="gr_svn7768_5681"
><td id="5681"><a href="#5681">5681</a></td></tr
><tr id="gr_svn7768_5682"
><td id="5682"><a href="#5682">5682</a></td></tr
><tr id="gr_svn7768_5683"
><td id="5683"><a href="#5683">5683</a></td></tr
><tr id="gr_svn7768_5684"
><td id="5684"><a href="#5684">5684</a></td></tr
><tr id="gr_svn7768_5685"
><td id="5685"><a href="#5685">5685</a></td></tr
><tr id="gr_svn7768_5686"
><td id="5686"><a href="#5686">5686</a></td></tr
><tr id="gr_svn7768_5687"
><td id="5687"><a href="#5687">5687</a></td></tr
><tr id="gr_svn7768_5688"
><td id="5688"><a href="#5688">5688</a></td></tr
><tr id="gr_svn7768_5689"
><td id="5689"><a href="#5689">5689</a></td></tr
><tr id="gr_svn7768_5690"
><td id="5690"><a href="#5690">5690</a></td></tr
><tr id="gr_svn7768_5691"
><td id="5691"><a href="#5691">5691</a></td></tr
><tr id="gr_svn7768_5692"
><td id="5692"><a href="#5692">5692</a></td></tr
><tr id="gr_svn7768_5693"
><td id="5693"><a href="#5693">5693</a></td></tr
><tr id="gr_svn7768_5694"
><td id="5694"><a href="#5694">5694</a></td></tr
><tr id="gr_svn7768_5695"
><td id="5695"><a href="#5695">5695</a></td></tr
><tr id="gr_svn7768_5696"
><td id="5696"><a href="#5696">5696</a></td></tr
><tr id="gr_svn7768_5697"
><td id="5697"><a href="#5697">5697</a></td></tr
><tr id="gr_svn7768_5698"
><td id="5698"><a href="#5698">5698</a></td></tr
><tr id="gr_svn7768_5699"
><td id="5699"><a href="#5699">5699</a></td></tr
><tr id="gr_svn7768_5700"
><td id="5700"><a href="#5700">5700</a></td></tr
><tr id="gr_svn7768_5701"
><td id="5701"><a href="#5701">5701</a></td></tr
><tr id="gr_svn7768_5702"
><td id="5702"><a href="#5702">5702</a></td></tr
><tr id="gr_svn7768_5703"
><td id="5703"><a href="#5703">5703</a></td></tr
><tr id="gr_svn7768_5704"
><td id="5704"><a href="#5704">5704</a></td></tr
><tr id="gr_svn7768_5705"
><td id="5705"><a href="#5705">5705</a></td></tr
><tr id="gr_svn7768_5706"
><td id="5706"><a href="#5706">5706</a></td></tr
><tr id="gr_svn7768_5707"
><td id="5707"><a href="#5707">5707</a></td></tr
><tr id="gr_svn7768_5708"
><td id="5708"><a href="#5708">5708</a></td></tr
><tr id="gr_svn7768_5709"
><td id="5709"><a href="#5709">5709</a></td></tr
><tr id="gr_svn7768_5710"
><td id="5710"><a href="#5710">5710</a></td></tr
><tr id="gr_svn7768_5711"
><td id="5711"><a href="#5711">5711</a></td></tr
><tr id="gr_svn7768_5712"
><td id="5712"><a href="#5712">5712</a></td></tr
><tr id="gr_svn7768_5713"
><td id="5713"><a href="#5713">5713</a></td></tr
><tr id="gr_svn7768_5714"
><td id="5714"><a href="#5714">5714</a></td></tr
><tr id="gr_svn7768_5715"
><td id="5715"><a href="#5715">5715</a></td></tr
><tr id="gr_svn7768_5716"
><td id="5716"><a href="#5716">5716</a></td></tr
><tr id="gr_svn7768_5717"
><td id="5717"><a href="#5717">5717</a></td></tr
><tr id="gr_svn7768_5718"
><td id="5718"><a href="#5718">5718</a></td></tr
><tr id="gr_svn7768_5719"
><td id="5719"><a href="#5719">5719</a></td></tr
><tr id="gr_svn7768_5720"
><td id="5720"><a href="#5720">5720</a></td></tr
><tr id="gr_svn7768_5721"
><td id="5721"><a href="#5721">5721</a></td></tr
><tr id="gr_svn7768_5722"
><td id="5722"><a href="#5722">5722</a></td></tr
><tr id="gr_svn7768_5723"
><td id="5723"><a href="#5723">5723</a></td></tr
><tr id="gr_svn7768_5724"
><td id="5724"><a href="#5724">5724</a></td></tr
><tr id="gr_svn7768_5725"
><td id="5725"><a href="#5725">5725</a></td></tr
><tr id="gr_svn7768_5726"
><td id="5726"><a href="#5726">5726</a></td></tr
><tr id="gr_svn7768_5727"
><td id="5727"><a href="#5727">5727</a></td></tr
><tr id="gr_svn7768_5728"
><td id="5728"><a href="#5728">5728</a></td></tr
><tr id="gr_svn7768_5729"
><td id="5729"><a href="#5729">5729</a></td></tr
><tr id="gr_svn7768_5730"
><td id="5730"><a href="#5730">5730</a></td></tr
><tr id="gr_svn7768_5731"
><td id="5731"><a href="#5731">5731</a></td></tr
><tr id="gr_svn7768_5732"
><td id="5732"><a href="#5732">5732</a></td></tr
><tr id="gr_svn7768_5733"
><td id="5733"><a href="#5733">5733</a></td></tr
><tr id="gr_svn7768_5734"
><td id="5734"><a href="#5734">5734</a></td></tr
><tr id="gr_svn7768_5735"
><td id="5735"><a href="#5735">5735</a></td></tr
><tr id="gr_svn7768_5736"
><td id="5736"><a href="#5736">5736</a></td></tr
><tr id="gr_svn7768_5737"
><td id="5737"><a href="#5737">5737</a></td></tr
><tr id="gr_svn7768_5738"
><td id="5738"><a href="#5738">5738</a></td></tr
><tr id="gr_svn7768_5739"
><td id="5739"><a href="#5739">5739</a></td></tr
><tr id="gr_svn7768_5740"
><td id="5740"><a href="#5740">5740</a></td></tr
><tr id="gr_svn7768_5741"
><td id="5741"><a href="#5741">5741</a></td></tr
><tr id="gr_svn7768_5742"
><td id="5742"><a href="#5742">5742</a></td></tr
><tr id="gr_svn7768_5743"
><td id="5743"><a href="#5743">5743</a></td></tr
><tr id="gr_svn7768_5744"
><td id="5744"><a href="#5744">5744</a></td></tr
><tr id="gr_svn7768_5745"
><td id="5745"><a href="#5745">5745</a></td></tr
><tr id="gr_svn7768_5746"
><td id="5746"><a href="#5746">5746</a></td></tr
><tr id="gr_svn7768_5747"
><td id="5747"><a href="#5747">5747</a></td></tr
><tr id="gr_svn7768_5748"
><td id="5748"><a href="#5748">5748</a></td></tr
><tr id="gr_svn7768_5749"
><td id="5749"><a href="#5749">5749</a></td></tr
><tr id="gr_svn7768_5750"
><td id="5750"><a href="#5750">5750</a></td></tr
><tr id="gr_svn7768_5751"
><td id="5751"><a href="#5751">5751</a></td></tr
><tr id="gr_svn7768_5752"
><td id="5752"><a href="#5752">5752</a></td></tr
><tr id="gr_svn7768_5753"
><td id="5753"><a href="#5753">5753</a></td></tr
><tr id="gr_svn7768_5754"
><td id="5754"><a href="#5754">5754</a></td></tr
><tr id="gr_svn7768_5755"
><td id="5755"><a href="#5755">5755</a></td></tr
><tr id="gr_svn7768_5756"
><td id="5756"><a href="#5756">5756</a></td></tr
><tr id="gr_svn7768_5757"
><td id="5757"><a href="#5757">5757</a></td></tr
><tr id="gr_svn7768_5758"
><td id="5758"><a href="#5758">5758</a></td></tr
><tr id="gr_svn7768_5759"
><td id="5759"><a href="#5759">5759</a></td></tr
><tr id="gr_svn7768_5760"
><td id="5760"><a href="#5760">5760</a></td></tr
><tr id="gr_svn7768_5761"
><td id="5761"><a href="#5761">5761</a></td></tr
><tr id="gr_svn7768_5762"
><td id="5762"><a href="#5762">5762</a></td></tr
><tr id="gr_svn7768_5763"
><td id="5763"><a href="#5763">5763</a></td></tr
><tr id="gr_svn7768_5764"
><td id="5764"><a href="#5764">5764</a></td></tr
><tr id="gr_svn7768_5765"
><td id="5765"><a href="#5765">5765</a></td></tr
><tr id="gr_svn7768_5766"
><td id="5766"><a href="#5766">5766</a></td></tr
><tr id="gr_svn7768_5767"
><td id="5767"><a href="#5767">5767</a></td></tr
><tr id="gr_svn7768_5768"
><td id="5768"><a href="#5768">5768</a></td></tr
><tr id="gr_svn7768_5769"
><td id="5769"><a href="#5769">5769</a></td></tr
><tr id="gr_svn7768_5770"
><td id="5770"><a href="#5770">5770</a></td></tr
><tr id="gr_svn7768_5771"
><td id="5771"><a href="#5771">5771</a></td></tr
><tr id="gr_svn7768_5772"
><td id="5772"><a href="#5772">5772</a></td></tr
><tr id="gr_svn7768_5773"
><td id="5773"><a href="#5773">5773</a></td></tr
><tr id="gr_svn7768_5774"
><td id="5774"><a href="#5774">5774</a></td></tr
><tr id="gr_svn7768_5775"
><td id="5775"><a href="#5775">5775</a></td></tr
><tr id="gr_svn7768_5776"
><td id="5776"><a href="#5776">5776</a></td></tr
><tr id="gr_svn7768_5777"
><td id="5777"><a href="#5777">5777</a></td></tr
><tr id="gr_svn7768_5778"
><td id="5778"><a href="#5778">5778</a></td></tr
><tr id="gr_svn7768_5779"
><td id="5779"><a href="#5779">5779</a></td></tr
><tr id="gr_svn7768_5780"
><td id="5780"><a href="#5780">5780</a></td></tr
><tr id="gr_svn7768_5781"
><td id="5781"><a href="#5781">5781</a></td></tr
><tr id="gr_svn7768_5782"
><td id="5782"><a href="#5782">5782</a></td></tr
><tr id="gr_svn7768_5783"
><td id="5783"><a href="#5783">5783</a></td></tr
><tr id="gr_svn7768_5784"
><td id="5784"><a href="#5784">5784</a></td></tr
><tr id="gr_svn7768_5785"
><td id="5785"><a href="#5785">5785</a></td></tr
><tr id="gr_svn7768_5786"
><td id="5786"><a href="#5786">5786</a></td></tr
><tr id="gr_svn7768_5787"
><td id="5787"><a href="#5787">5787</a></td></tr
><tr id="gr_svn7768_5788"
><td id="5788"><a href="#5788">5788</a></td></tr
><tr id="gr_svn7768_5789"
><td id="5789"><a href="#5789">5789</a></td></tr
><tr id="gr_svn7768_5790"
><td id="5790"><a href="#5790">5790</a></td></tr
><tr id="gr_svn7768_5791"
><td id="5791"><a href="#5791">5791</a></td></tr
><tr id="gr_svn7768_5792"
><td id="5792"><a href="#5792">5792</a></td></tr
><tr id="gr_svn7768_5793"
><td id="5793"><a href="#5793">5793</a></td></tr
><tr id="gr_svn7768_5794"
><td id="5794"><a href="#5794">5794</a></td></tr
><tr id="gr_svn7768_5795"
><td id="5795"><a href="#5795">5795</a></td></tr
><tr id="gr_svn7768_5796"
><td id="5796"><a href="#5796">5796</a></td></tr
><tr id="gr_svn7768_5797"
><td id="5797"><a href="#5797">5797</a></td></tr
><tr id="gr_svn7768_5798"
><td id="5798"><a href="#5798">5798</a></td></tr
><tr id="gr_svn7768_5799"
><td id="5799"><a href="#5799">5799</a></td></tr
><tr id="gr_svn7768_5800"
><td id="5800"><a href="#5800">5800</a></td></tr
><tr id="gr_svn7768_5801"
><td id="5801"><a href="#5801">5801</a></td></tr
><tr id="gr_svn7768_5802"
><td id="5802"><a href="#5802">5802</a></td></tr
><tr id="gr_svn7768_5803"
><td id="5803"><a href="#5803">5803</a></td></tr
><tr id="gr_svn7768_5804"
><td id="5804"><a href="#5804">5804</a></td></tr
><tr id="gr_svn7768_5805"
><td id="5805"><a href="#5805">5805</a></td></tr
><tr id="gr_svn7768_5806"
><td id="5806"><a href="#5806">5806</a></td></tr
><tr id="gr_svn7768_5807"
><td id="5807"><a href="#5807">5807</a></td></tr
><tr id="gr_svn7768_5808"
><td id="5808"><a href="#5808">5808</a></td></tr
><tr id="gr_svn7768_5809"
><td id="5809"><a href="#5809">5809</a></td></tr
><tr id="gr_svn7768_5810"
><td id="5810"><a href="#5810">5810</a></td></tr
><tr id="gr_svn7768_5811"
><td id="5811"><a href="#5811">5811</a></td></tr
><tr id="gr_svn7768_5812"
><td id="5812"><a href="#5812">5812</a></td></tr
><tr id="gr_svn7768_5813"
><td id="5813"><a href="#5813">5813</a></td></tr
><tr id="gr_svn7768_5814"
><td id="5814"><a href="#5814">5814</a></td></tr
><tr id="gr_svn7768_5815"
><td id="5815"><a href="#5815">5815</a></td></tr
><tr id="gr_svn7768_5816"
><td id="5816"><a href="#5816">5816</a></td></tr
><tr id="gr_svn7768_5817"
><td id="5817"><a href="#5817">5817</a></td></tr
><tr id="gr_svn7768_5818"
><td id="5818"><a href="#5818">5818</a></td></tr
><tr id="gr_svn7768_5819"
><td id="5819"><a href="#5819">5819</a></td></tr
><tr id="gr_svn7768_5820"
><td id="5820"><a href="#5820">5820</a></td></tr
><tr id="gr_svn7768_5821"
><td id="5821"><a href="#5821">5821</a></td></tr
><tr id="gr_svn7768_5822"
><td id="5822"><a href="#5822">5822</a></td></tr
><tr id="gr_svn7768_5823"
><td id="5823"><a href="#5823">5823</a></td></tr
><tr id="gr_svn7768_5824"
><td id="5824"><a href="#5824">5824</a></td></tr
><tr id="gr_svn7768_5825"
><td id="5825"><a href="#5825">5825</a></td></tr
><tr id="gr_svn7768_5826"
><td id="5826"><a href="#5826">5826</a></td></tr
><tr id="gr_svn7768_5827"
><td id="5827"><a href="#5827">5827</a></td></tr
><tr id="gr_svn7768_5828"
><td id="5828"><a href="#5828">5828</a></td></tr
><tr id="gr_svn7768_5829"
><td id="5829"><a href="#5829">5829</a></td></tr
><tr id="gr_svn7768_5830"
><td id="5830"><a href="#5830">5830</a></td></tr
><tr id="gr_svn7768_5831"
><td id="5831"><a href="#5831">5831</a></td></tr
><tr id="gr_svn7768_5832"
><td id="5832"><a href="#5832">5832</a></td></tr
><tr id="gr_svn7768_5833"
><td id="5833"><a href="#5833">5833</a></td></tr
><tr id="gr_svn7768_5834"
><td id="5834"><a href="#5834">5834</a></td></tr
><tr id="gr_svn7768_5835"
><td id="5835"><a href="#5835">5835</a></td></tr
><tr id="gr_svn7768_5836"
><td id="5836"><a href="#5836">5836</a></td></tr
><tr id="gr_svn7768_5837"
><td id="5837"><a href="#5837">5837</a></td></tr
><tr id="gr_svn7768_5838"
><td id="5838"><a href="#5838">5838</a></td></tr
><tr id="gr_svn7768_5839"
><td id="5839"><a href="#5839">5839</a></td></tr
><tr id="gr_svn7768_5840"
><td id="5840"><a href="#5840">5840</a></td></tr
><tr id="gr_svn7768_5841"
><td id="5841"><a href="#5841">5841</a></td></tr
><tr id="gr_svn7768_5842"
><td id="5842"><a href="#5842">5842</a></td></tr
><tr id="gr_svn7768_5843"
><td id="5843"><a href="#5843">5843</a></td></tr
><tr id="gr_svn7768_5844"
><td id="5844"><a href="#5844">5844</a></td></tr
><tr id="gr_svn7768_5845"
><td id="5845"><a href="#5845">5845</a></td></tr
><tr id="gr_svn7768_5846"
><td id="5846"><a href="#5846">5846</a></td></tr
><tr id="gr_svn7768_5847"
><td id="5847"><a href="#5847">5847</a></td></tr
><tr id="gr_svn7768_5848"
><td id="5848"><a href="#5848">5848</a></td></tr
><tr id="gr_svn7768_5849"
><td id="5849"><a href="#5849">5849</a></td></tr
><tr id="gr_svn7768_5850"
><td id="5850"><a href="#5850">5850</a></td></tr
><tr id="gr_svn7768_5851"
><td id="5851"><a href="#5851">5851</a></td></tr
><tr id="gr_svn7768_5852"
><td id="5852"><a href="#5852">5852</a></td></tr
><tr id="gr_svn7768_5853"
><td id="5853"><a href="#5853">5853</a></td></tr
><tr id="gr_svn7768_5854"
><td id="5854"><a href="#5854">5854</a></td></tr
><tr id="gr_svn7768_5855"
><td id="5855"><a href="#5855">5855</a></td></tr
><tr id="gr_svn7768_5856"
><td id="5856"><a href="#5856">5856</a></td></tr
><tr id="gr_svn7768_5857"
><td id="5857"><a href="#5857">5857</a></td></tr
><tr id="gr_svn7768_5858"
><td id="5858"><a href="#5858">5858</a></td></tr
><tr id="gr_svn7768_5859"
><td id="5859"><a href="#5859">5859</a></td></tr
><tr id="gr_svn7768_5860"
><td id="5860"><a href="#5860">5860</a></td></tr
><tr id="gr_svn7768_5861"
><td id="5861"><a href="#5861">5861</a></td></tr
><tr id="gr_svn7768_5862"
><td id="5862"><a href="#5862">5862</a></td></tr
><tr id="gr_svn7768_5863"
><td id="5863"><a href="#5863">5863</a></td></tr
><tr id="gr_svn7768_5864"
><td id="5864"><a href="#5864">5864</a></td></tr
><tr id="gr_svn7768_5865"
><td id="5865"><a href="#5865">5865</a></td></tr
><tr id="gr_svn7768_5866"
><td id="5866"><a href="#5866">5866</a></td></tr
><tr id="gr_svn7768_5867"
><td id="5867"><a href="#5867">5867</a></td></tr
><tr id="gr_svn7768_5868"
><td id="5868"><a href="#5868">5868</a></td></tr
><tr id="gr_svn7768_5869"
><td id="5869"><a href="#5869">5869</a></td></tr
><tr id="gr_svn7768_5870"
><td id="5870"><a href="#5870">5870</a></td></tr
><tr id="gr_svn7768_5871"
><td id="5871"><a href="#5871">5871</a></td></tr
><tr id="gr_svn7768_5872"
><td id="5872"><a href="#5872">5872</a></td></tr
><tr id="gr_svn7768_5873"
><td id="5873"><a href="#5873">5873</a></td></tr
><tr id="gr_svn7768_5874"
><td id="5874"><a href="#5874">5874</a></td></tr
><tr id="gr_svn7768_5875"
><td id="5875"><a href="#5875">5875</a></td></tr
><tr id="gr_svn7768_5876"
><td id="5876"><a href="#5876">5876</a></td></tr
><tr id="gr_svn7768_5877"
><td id="5877"><a href="#5877">5877</a></td></tr
><tr id="gr_svn7768_5878"
><td id="5878"><a href="#5878">5878</a></td></tr
><tr id="gr_svn7768_5879"
><td id="5879"><a href="#5879">5879</a></td></tr
><tr id="gr_svn7768_5880"
><td id="5880"><a href="#5880">5880</a></td></tr
><tr id="gr_svn7768_5881"
><td id="5881"><a href="#5881">5881</a></td></tr
><tr id="gr_svn7768_5882"
><td id="5882"><a href="#5882">5882</a></td></tr
><tr id="gr_svn7768_5883"
><td id="5883"><a href="#5883">5883</a></td></tr
><tr id="gr_svn7768_5884"
><td id="5884"><a href="#5884">5884</a></td></tr
><tr id="gr_svn7768_5885"
><td id="5885"><a href="#5885">5885</a></td></tr
><tr id="gr_svn7768_5886"
><td id="5886"><a href="#5886">5886</a></td></tr
><tr id="gr_svn7768_5887"
><td id="5887"><a href="#5887">5887</a></td></tr
><tr id="gr_svn7768_5888"
><td id="5888"><a href="#5888">5888</a></td></tr
><tr id="gr_svn7768_5889"
><td id="5889"><a href="#5889">5889</a></td></tr
><tr id="gr_svn7768_5890"
><td id="5890"><a href="#5890">5890</a></td></tr
><tr id="gr_svn7768_5891"
><td id="5891"><a href="#5891">5891</a></td></tr
><tr id="gr_svn7768_5892"
><td id="5892"><a href="#5892">5892</a></td></tr
><tr id="gr_svn7768_5893"
><td id="5893"><a href="#5893">5893</a></td></tr
><tr id="gr_svn7768_5894"
><td id="5894"><a href="#5894">5894</a></td></tr
><tr id="gr_svn7768_5895"
><td id="5895"><a href="#5895">5895</a></td></tr
><tr id="gr_svn7768_5896"
><td id="5896"><a href="#5896">5896</a></td></tr
><tr id="gr_svn7768_5897"
><td id="5897"><a href="#5897">5897</a></td></tr
><tr id="gr_svn7768_5898"
><td id="5898"><a href="#5898">5898</a></td></tr
><tr id="gr_svn7768_5899"
><td id="5899"><a href="#5899">5899</a></td></tr
><tr id="gr_svn7768_5900"
><td id="5900"><a href="#5900">5900</a></td></tr
><tr id="gr_svn7768_5901"
><td id="5901"><a href="#5901">5901</a></td></tr
><tr id="gr_svn7768_5902"
><td id="5902"><a href="#5902">5902</a></td></tr
><tr id="gr_svn7768_5903"
><td id="5903"><a href="#5903">5903</a></td></tr
><tr id="gr_svn7768_5904"
><td id="5904"><a href="#5904">5904</a></td></tr
><tr id="gr_svn7768_5905"
><td id="5905"><a href="#5905">5905</a></td></tr
><tr id="gr_svn7768_5906"
><td id="5906"><a href="#5906">5906</a></td></tr
><tr id="gr_svn7768_5907"
><td id="5907"><a href="#5907">5907</a></td></tr
><tr id="gr_svn7768_5908"
><td id="5908"><a href="#5908">5908</a></td></tr
><tr id="gr_svn7768_5909"
><td id="5909"><a href="#5909">5909</a></td></tr
><tr id="gr_svn7768_5910"
><td id="5910"><a href="#5910">5910</a></td></tr
><tr id="gr_svn7768_5911"
><td id="5911"><a href="#5911">5911</a></td></tr
><tr id="gr_svn7768_5912"
><td id="5912"><a href="#5912">5912</a></td></tr
><tr id="gr_svn7768_5913"
><td id="5913"><a href="#5913">5913</a></td></tr
><tr id="gr_svn7768_5914"
><td id="5914"><a href="#5914">5914</a></td></tr
><tr id="gr_svn7768_5915"
><td id="5915"><a href="#5915">5915</a></td></tr
><tr id="gr_svn7768_5916"
><td id="5916"><a href="#5916">5916</a></td></tr
><tr id="gr_svn7768_5917"
><td id="5917"><a href="#5917">5917</a></td></tr
><tr id="gr_svn7768_5918"
><td id="5918"><a href="#5918">5918</a></td></tr
><tr id="gr_svn7768_5919"
><td id="5919"><a href="#5919">5919</a></td></tr
><tr id="gr_svn7768_5920"
><td id="5920"><a href="#5920">5920</a></td></tr
><tr id="gr_svn7768_5921"
><td id="5921"><a href="#5921">5921</a></td></tr
><tr id="gr_svn7768_5922"
><td id="5922"><a href="#5922">5922</a></td></tr
><tr id="gr_svn7768_5923"
><td id="5923"><a href="#5923">5923</a></td></tr
><tr id="gr_svn7768_5924"
><td id="5924"><a href="#5924">5924</a></td></tr
><tr id="gr_svn7768_5925"
><td id="5925"><a href="#5925">5925</a></td></tr
><tr id="gr_svn7768_5926"
><td id="5926"><a href="#5926">5926</a></td></tr
><tr id="gr_svn7768_5927"
><td id="5927"><a href="#5927">5927</a></td></tr
><tr id="gr_svn7768_5928"
><td id="5928"><a href="#5928">5928</a></td></tr
><tr id="gr_svn7768_5929"
><td id="5929"><a href="#5929">5929</a></td></tr
><tr id="gr_svn7768_5930"
><td id="5930"><a href="#5930">5930</a></td></tr
><tr id="gr_svn7768_5931"
><td id="5931"><a href="#5931">5931</a></td></tr
><tr id="gr_svn7768_5932"
><td id="5932"><a href="#5932">5932</a></td></tr
><tr id="gr_svn7768_5933"
><td id="5933"><a href="#5933">5933</a></td></tr
><tr id="gr_svn7768_5934"
><td id="5934"><a href="#5934">5934</a></td></tr
><tr id="gr_svn7768_5935"
><td id="5935"><a href="#5935">5935</a></td></tr
><tr id="gr_svn7768_5936"
><td id="5936"><a href="#5936">5936</a></td></tr
><tr id="gr_svn7768_5937"
><td id="5937"><a href="#5937">5937</a></td></tr
><tr id="gr_svn7768_5938"
><td id="5938"><a href="#5938">5938</a></td></tr
><tr id="gr_svn7768_5939"
><td id="5939"><a href="#5939">5939</a></td></tr
><tr id="gr_svn7768_5940"
><td id="5940"><a href="#5940">5940</a></td></tr
><tr id="gr_svn7768_5941"
><td id="5941"><a href="#5941">5941</a></td></tr
><tr id="gr_svn7768_5942"
><td id="5942"><a href="#5942">5942</a></td></tr
><tr id="gr_svn7768_5943"
><td id="5943"><a href="#5943">5943</a></td></tr
><tr id="gr_svn7768_5944"
><td id="5944"><a href="#5944">5944</a></td></tr
><tr id="gr_svn7768_5945"
><td id="5945"><a href="#5945">5945</a></td></tr
><tr id="gr_svn7768_5946"
><td id="5946"><a href="#5946">5946</a></td></tr
><tr id="gr_svn7768_5947"
><td id="5947"><a href="#5947">5947</a></td></tr
><tr id="gr_svn7768_5948"
><td id="5948"><a href="#5948">5948</a></td></tr
><tr id="gr_svn7768_5949"
><td id="5949"><a href="#5949">5949</a></td></tr
><tr id="gr_svn7768_5950"
><td id="5950"><a href="#5950">5950</a></td></tr
><tr id="gr_svn7768_5951"
><td id="5951"><a href="#5951">5951</a></td></tr
><tr id="gr_svn7768_5952"
><td id="5952"><a href="#5952">5952</a></td></tr
><tr id="gr_svn7768_5953"
><td id="5953"><a href="#5953">5953</a></td></tr
><tr id="gr_svn7768_5954"
><td id="5954"><a href="#5954">5954</a></td></tr
><tr id="gr_svn7768_5955"
><td id="5955"><a href="#5955">5955</a></td></tr
><tr id="gr_svn7768_5956"
><td id="5956"><a href="#5956">5956</a></td></tr
><tr id="gr_svn7768_5957"
><td id="5957"><a href="#5957">5957</a></td></tr
><tr id="gr_svn7768_5958"
><td id="5958"><a href="#5958">5958</a></td></tr
><tr id="gr_svn7768_5959"
><td id="5959"><a href="#5959">5959</a></td></tr
><tr id="gr_svn7768_5960"
><td id="5960"><a href="#5960">5960</a></td></tr
><tr id="gr_svn7768_5961"
><td id="5961"><a href="#5961">5961</a></td></tr
><tr id="gr_svn7768_5962"
><td id="5962"><a href="#5962">5962</a></td></tr
><tr id="gr_svn7768_5963"
><td id="5963"><a href="#5963">5963</a></td></tr
><tr id="gr_svn7768_5964"
><td id="5964"><a href="#5964">5964</a></td></tr
><tr id="gr_svn7768_5965"
><td id="5965"><a href="#5965">5965</a></td></tr
><tr id="gr_svn7768_5966"
><td id="5966"><a href="#5966">5966</a></td></tr
><tr id="gr_svn7768_5967"
><td id="5967"><a href="#5967">5967</a></td></tr
><tr id="gr_svn7768_5968"
><td id="5968"><a href="#5968">5968</a></td></tr
><tr id="gr_svn7768_5969"
><td id="5969"><a href="#5969">5969</a></td></tr
><tr id="gr_svn7768_5970"
><td id="5970"><a href="#5970">5970</a></td></tr
><tr id="gr_svn7768_5971"
><td id="5971"><a href="#5971">5971</a></td></tr
><tr id="gr_svn7768_5972"
><td id="5972"><a href="#5972">5972</a></td></tr
><tr id="gr_svn7768_5973"
><td id="5973"><a href="#5973">5973</a></td></tr
><tr id="gr_svn7768_5974"
><td id="5974"><a href="#5974">5974</a></td></tr
><tr id="gr_svn7768_5975"
><td id="5975"><a href="#5975">5975</a></td></tr
><tr id="gr_svn7768_5976"
><td id="5976"><a href="#5976">5976</a></td></tr
><tr id="gr_svn7768_5977"
><td id="5977"><a href="#5977">5977</a></td></tr
><tr id="gr_svn7768_5978"
><td id="5978"><a href="#5978">5978</a></td></tr
><tr id="gr_svn7768_5979"
><td id="5979"><a href="#5979">5979</a></td></tr
><tr id="gr_svn7768_5980"
><td id="5980"><a href="#5980">5980</a></td></tr
><tr id="gr_svn7768_5981"
><td id="5981"><a href="#5981">5981</a></td></tr
><tr id="gr_svn7768_5982"
><td id="5982"><a href="#5982">5982</a></td></tr
><tr id="gr_svn7768_5983"
><td id="5983"><a href="#5983">5983</a></td></tr
><tr id="gr_svn7768_5984"
><td id="5984"><a href="#5984">5984</a></td></tr
><tr id="gr_svn7768_5985"
><td id="5985"><a href="#5985">5985</a></td></tr
><tr id="gr_svn7768_5986"
><td id="5986"><a href="#5986">5986</a></td></tr
><tr id="gr_svn7768_5987"
><td id="5987"><a href="#5987">5987</a></td></tr
><tr id="gr_svn7768_5988"
><td id="5988"><a href="#5988">5988</a></td></tr
><tr id="gr_svn7768_5989"
><td id="5989"><a href="#5989">5989</a></td></tr
><tr id="gr_svn7768_5990"
><td id="5990"><a href="#5990">5990</a></td></tr
><tr id="gr_svn7768_5991"
><td id="5991"><a href="#5991">5991</a></td></tr
><tr id="gr_svn7768_5992"
><td id="5992"><a href="#5992">5992</a></td></tr
><tr id="gr_svn7768_5993"
><td id="5993"><a href="#5993">5993</a></td></tr
><tr id="gr_svn7768_5994"
><td id="5994"><a href="#5994">5994</a></td></tr
><tr id="gr_svn7768_5995"
><td id="5995"><a href="#5995">5995</a></td></tr
><tr id="gr_svn7768_5996"
><td id="5996"><a href="#5996">5996</a></td></tr
><tr id="gr_svn7768_5997"
><td id="5997"><a href="#5997">5997</a></td></tr
><tr id="gr_svn7768_5998"
><td id="5998"><a href="#5998">5998</a></td></tr
><tr id="gr_svn7768_5999"
><td id="5999"><a href="#5999">5999</a></td></tr
><tr id="gr_svn7768_6000"
><td id="6000"><a href="#6000">6000</a></td></tr
><tr id="gr_svn7768_6001"
><td id="6001"><a href="#6001">6001</a></td></tr
><tr id="gr_svn7768_6002"
><td id="6002"><a href="#6002">6002</a></td></tr
><tr id="gr_svn7768_6003"
><td id="6003"><a href="#6003">6003</a></td></tr
><tr id="gr_svn7768_6004"
><td id="6004"><a href="#6004">6004</a></td></tr
><tr id="gr_svn7768_6005"
><td id="6005"><a href="#6005">6005</a></td></tr
><tr id="gr_svn7768_6006"
><td id="6006"><a href="#6006">6006</a></td></tr
><tr id="gr_svn7768_6007"
><td id="6007"><a href="#6007">6007</a></td></tr
><tr id="gr_svn7768_6008"
><td id="6008"><a href="#6008">6008</a></td></tr
><tr id="gr_svn7768_6009"
><td id="6009"><a href="#6009">6009</a></td></tr
><tr id="gr_svn7768_6010"
><td id="6010"><a href="#6010">6010</a></td></tr
><tr id="gr_svn7768_6011"
><td id="6011"><a href="#6011">6011</a></td></tr
><tr id="gr_svn7768_6012"
><td id="6012"><a href="#6012">6012</a></td></tr
><tr id="gr_svn7768_6013"
><td id="6013"><a href="#6013">6013</a></td></tr
><tr id="gr_svn7768_6014"
><td id="6014"><a href="#6014">6014</a></td></tr
><tr id="gr_svn7768_6015"
><td id="6015"><a href="#6015">6015</a></td></tr
><tr id="gr_svn7768_6016"
><td id="6016"><a href="#6016">6016</a></td></tr
><tr id="gr_svn7768_6017"
><td id="6017"><a href="#6017">6017</a></td></tr
><tr id="gr_svn7768_6018"
><td id="6018"><a href="#6018">6018</a></td></tr
><tr id="gr_svn7768_6019"
><td id="6019"><a href="#6019">6019</a></td></tr
></table></pre>
<pre><table width="100%"><tr class="nocursor"><td></td></tr></table></pre>
</td>
<td id="lines">
<pre class="prettyprint"><table width="100%"><tr class="cursor_stop cursor_hidden"><td></td></tr></table></pre>
<pre class="prettyprint lang-java"><table id="src_table_0"><tr
id=sl_svn7768_1
><td class="source">/* -*- mode: java; c-basic-offset: 2; indent-tabs-mode: nil -*- */<br></td></tr
><tr
id=sl_svn7768_2
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3
><td class="source">/*<br></td></tr
><tr
id=sl_svn7768_4
><td class="source"> Part of the Processing project - http://processing.org<br></td></tr
><tr
id=sl_svn7768_5
><td class="source"><br></td></tr
><tr
id=sl_svn7768_6
><td class="source"> Copyright (c) 2004-09 Ben Fry and Casey Reas<br></td></tr
><tr
id=sl_svn7768_7
><td class="source"> Copyright (c) 2001-04 Massachusetts Institute of Technology<br></td></tr
><tr
id=sl_svn7768_8
><td class="source"><br></td></tr
><tr
id=sl_svn7768_9
><td class="source"> This library is free software; you can redistribute it and/or<br></td></tr
><tr
id=sl_svn7768_10
><td class="source"> modify it under the terms of the GNU Lesser General Public<br></td></tr
><tr
id=sl_svn7768_11
><td class="source"> License as published by the Free Software Foundation; either<br></td></tr
><tr
id=sl_svn7768_12
><td class="source"> version 2.1 of the License, or (at your option) any later version.<br></td></tr
><tr
id=sl_svn7768_13
><td class="source"><br></td></tr
><tr
id=sl_svn7768_14
><td class="source"> This library is distributed in the hope that it will be useful,<br></td></tr
><tr
id=sl_svn7768_15
><td class="source"> but WITHOUT ANY WARRANTY; without even the implied warranty of<br></td></tr
><tr
id=sl_svn7768_16
><td class="source"> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU<br></td></tr
><tr
id=sl_svn7768_17
><td class="source"> Lesser General Public License for more details.<br></td></tr
><tr
id=sl_svn7768_18
><td class="source"><br></td></tr
><tr
id=sl_svn7768_19
><td class="source"> You should have received a copy of the GNU Lesser General<br></td></tr
><tr
id=sl_svn7768_20
><td class="source"> Public License along with this library; if not, write to the<br></td></tr
><tr
id=sl_svn7768_21
><td class="source"> Free Software Foundation, Inc., 59 Temple Place, Suite 330,<br></td></tr
><tr
id=sl_svn7768_22
><td class="source"> Boston, MA 02111-1307 USA<br></td></tr
><tr
id=sl_svn7768_23
><td class="source">*/<br></td></tr
><tr
id=sl_svn7768_24
><td class="source"><br></td></tr
><tr
id=sl_svn7768_25
><td class="source">package processing.core;<br></td></tr
><tr
id=sl_svn7768_26
><td class="source"><br></td></tr
><tr
id=sl_svn7768_27
><td class="source">import java.awt.*;<br></td></tr
><tr
id=sl_svn7768_28
><td class="source">import java.util.HashMap;<br></td></tr
><tr
id=sl_svn7768_29
><td class="source"><br></td></tr
><tr
id=sl_svn7768_30
><td class="source"><br></td></tr
><tr
id=sl_svn7768_31
><td class="source">/**<br></td></tr
><tr
id=sl_svn7768_32
><td class="source"> * Main graphics and rendering context, as well as the base API implementation for processing &quot;core&quot;.<br></td></tr
><tr
id=sl_svn7768_33
><td class="source"> * Use this class if you need to draw into an off-screen graphics buffer.<br></td></tr
><tr
id=sl_svn7768_34
><td class="source"> * A PGraphics object can be constructed with the &lt;b&gt;createGraphics()&lt;/b&gt; function.<br></td></tr
><tr
id=sl_svn7768_35
><td class="source"> * The &lt;b&gt;beginDraw()&lt;/b&gt; and &lt;b&gt;endDraw()&lt;/b&gt; methods (see above example) are necessary to set up the buffer and to finalize it.<br></td></tr
><tr
id=sl_svn7768_36
><td class="source"> * The fields and methods for this class are extensive;<br></td></tr
><tr
id=sl_svn7768_37
><td class="source"> * for a complete list visit the developer&#39;s reference: http://dev.processing.org/reference/core/<br></td></tr
><tr
id=sl_svn7768_38
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_39
><td class="source"> * Main graphics and rendering context, as well as the base API implementation.<br></td></tr
><tr
id=sl_svn7768_40
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_41
><td class="source"> * &lt;h2&gt;Subclassing and initializing PGraphics objects&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_42
><td class="source"> * Starting in release 0149, subclasses of PGraphics are handled differently.<br></td></tr
><tr
id=sl_svn7768_43
><td class="source"> * The constructor for subclasses takes no parameters, instead a series of<br></td></tr
><tr
id=sl_svn7768_44
><td class="source"> * functions are called by the hosting PApplet to specify its attributes.<br></td></tr
><tr
id=sl_svn7768_45
><td class="source"> * &lt;ul&gt;<br></td></tr
><tr
id=sl_svn7768_46
><td class="source"> * &lt;li&gt;setParent(PApplet) - is called to specify the parent PApplet.<br></td></tr
><tr
id=sl_svn7768_47
><td class="source"> * &lt;li&gt;setPrimary(boolean) - called with true if this PGraphics will be the<br></td></tr
><tr
id=sl_svn7768_48
><td class="source"> * primary drawing surface used by the sketch, or false if not.<br></td></tr
><tr
id=sl_svn7768_49
><td class="source"> * &lt;li&gt;setPath(String) - called when the renderer needs a filename or output<br></td></tr
><tr
id=sl_svn7768_50
><td class="source"> * path, such as with the PDF or DXF renderers.<br></td></tr
><tr
id=sl_svn7768_51
><td class="source"> * &lt;li&gt;setSize(int, int) - this is called last, at which point it&#39;s safe for<br></td></tr
><tr
id=sl_svn7768_52
><td class="source"> * the renderer to complete its initialization routine.<br></td></tr
><tr
id=sl_svn7768_53
><td class="source"> * &lt;/ul&gt;<br></td></tr
><tr
id=sl_svn7768_54
><td class="source"> * The functions were broken out because of the growing number of parameters<br></td></tr
><tr
id=sl_svn7768_55
><td class="source"> * such as these that might be used by a renderer, yet with the exception of<br></td></tr
><tr
id=sl_svn7768_56
><td class="source"> * setSize(), it&#39;s not clear which will be necessary. So while the size could<br></td></tr
><tr
id=sl_svn7768_57
><td class="source"> * be passed in to the constructor instead of a setSize() function, a function<br></td></tr
><tr
id=sl_svn7768_58
><td class="source"> * would still be needed that would notify the renderer that it was time to<br></td></tr
><tr
id=sl_svn7768_59
><td class="source"> * finish its initialization. Thus, setSize() simply does both.<br></td></tr
><tr
id=sl_svn7768_60
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_61
><td class="source"> * &lt;h2&gt;Know your rights: public vs. private methods&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_62
><td class="source"> * Methods that are protected are often subclassed by other renderers, however<br></td></tr
><tr
id=sl_svn7768_63
><td class="source"> * they are not set &#39;public&#39; because they shouldn&#39;t be part of the user-facing<br></td></tr
><tr
id=sl_svn7768_64
><td class="source"> * public API accessible from PApplet. That is, we don&#39;t want sketches calling<br></td></tr
><tr
id=sl_svn7768_65
><td class="source"> * textModeCheck() or vertexTexture() directly.<br></td></tr
><tr
id=sl_svn7768_66
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_67
><td class="source"> * &lt;h2&gt;Handling warnings and exceptions&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_68
><td class="source"> * Methods that are unavailable generally show a warning, unless their lack of<br></td></tr
><tr
id=sl_svn7768_69
><td class="source"> * availability will soon cause another exception. For instance, if a method<br></td></tr
><tr
id=sl_svn7768_70
><td class="source"> * like getMatrix() returns null because it is unavailable, an exception will<br></td></tr
><tr
id=sl_svn7768_71
><td class="source"> * be thrown stating that the method is unavailable, rather than waiting for<br></td></tr
><tr
id=sl_svn7768_72
><td class="source"> * the NullPointerException that will occur when the sketch tries to use that<br></td></tr
><tr
id=sl_svn7768_73
><td class="source"> * method. As of release 0149, warnings will only be shown once, and exceptions<br></td></tr
><tr
id=sl_svn7768_74
><td class="source"> * have been changed to warnings where possible.<br></td></tr
><tr
id=sl_svn7768_75
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_76
><td class="source"> * &lt;h2&gt;Using xxxxImpl() for subclassing smoothness&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_77
><td class="source"> * The xxxImpl() methods are generally renderer-specific handling for some<br></td></tr
><tr
id=sl_svn7768_78
><td class="source"> * subset if tasks for a particular function (vague enough for you?) For<br></td></tr
><tr
id=sl_svn7768_79
><td class="source"> * instance, imageImpl() handles drawing an image whose x/y/w/h and u/v coords<br></td></tr
><tr
id=sl_svn7768_80
><td class="source"> * have been specified, and screen placement (independent of imageMode) has<br></td></tr
><tr
id=sl_svn7768_81
><td class="source"> * been determined. There&#39;s no point in all renderers implementing the<br></td></tr
><tr
id=sl_svn7768_82
><td class="source"> * &lt;tt&gt;if (imageMode == BLAH)&lt;/tt&gt; placement/sizing logic, so that&#39;s handled<br></td></tr
><tr
id=sl_svn7768_83
><td class="source"> * by PGraphics, which then calls imageImpl() once all that is figured out.<br></td></tr
><tr
id=sl_svn7768_84
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_85
><td class="source"> * &lt;h2&gt;His brother PImage&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_86
><td class="source"> * PGraphics subclasses PImage so that it can be drawn and manipulated in a<br></td></tr
><tr
id=sl_svn7768_87
><td class="source"> * similar fashion. As such, many methods are inherited from PGraphics,<br></td></tr
><tr
id=sl_svn7768_88
><td class="source"> * though many are unavailable: for instance, resize() is not likely to be<br></td></tr
><tr
id=sl_svn7768_89
><td class="source"> * implemented; the same goes for mask(), depending on the situation.<br></td></tr
><tr
id=sl_svn7768_90
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_91
><td class="source"> * &lt;h2&gt;What&#39;s in PGraphics, what ain&#39;t&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_92
><td class="source"> * For the benefit of subclasses, as much as possible has been placed inside<br></td></tr
><tr
id=sl_svn7768_93
><td class="source"> * PGraphics. For instance, bezier interpolation code and implementations of<br></td></tr
><tr
id=sl_svn7768_94
><td class="source"> * the strokeCap() method (that simply sets the strokeCap variable) are<br></td></tr
><tr
id=sl_svn7768_95
><td class="source"> * handled here. Features that will vary widely between renderers are located<br></td></tr
><tr
id=sl_svn7768_96
><td class="source"> * inside the subclasses themselves. For instance, all matrix handling code<br></td></tr
><tr
id=sl_svn7768_97
><td class="source"> * is per-renderer: Java 2D uses its own AffineTransform, P2D uses a PMatrix2D,<br></td></tr
><tr
id=sl_svn7768_98
><td class="source"> * and PGraphics3D needs to keep continually update forward and reverse<br></td></tr
><tr
id=sl_svn7768_99
><td class="source"> * transformations. A proper (future) OpenGL implementation will have all its<br></td></tr
><tr
id=sl_svn7768_100
><td class="source"> * matrix madness handled by the card. Lighting also falls under this<br></td></tr
><tr
id=sl_svn7768_101
><td class="source"> * category, however the base material property settings (emissive, specular,<br></td></tr
><tr
id=sl_svn7768_102
><td class="source"> * et al.) are handled in PGraphics because they use the standard colorMode()<br></td></tr
><tr
id=sl_svn7768_103
><td class="source"> * logic. Subclasses should override methods like emissiveFromCalc(), which<br></td></tr
><tr
id=sl_svn7768_104
><td class="source"> * is a point where a valid color has been defined internally, and can be<br></td></tr
><tr
id=sl_svn7768_105
><td class="source"> * applied in some manner based on the calcXxxx values.<br></td></tr
><tr
id=sl_svn7768_106
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_107
><td class="source"> * &lt;h2&gt;What&#39;s in the PGraphics documentation, what ain&#39;t&lt;/h2&gt;<br></td></tr
><tr
id=sl_svn7768_108
><td class="source"> * Some things are noted here, some things are not. For public API, always<br></td></tr
><tr
id=sl_svn7768_109
><td class="source"> * refer to the &lt;a href=&quot;http://processing.org/reference&quot;&gt;reference&lt;/A&gt;<br></td></tr
><tr
id=sl_svn7768_110
><td class="source"> * on Processing.org for proper explanations. &lt;b&gt;No attempt has been made to<br></td></tr
><tr
id=sl_svn7768_111
><td class="source"> * keep the javadoc up to date or complete.&lt;/b&gt; It&#39;s an enormous task for<br></td></tr
><tr
id=sl_svn7768_112
><td class="source"> * which we simply do not have the time. That is, it&#39;s not something that<br></td></tr
><tr
id=sl_svn7768_113
><td class="source"> * to be done once&amp;mdash;it&#39;s a matter of keeping the multiple references<br></td></tr
><tr
id=sl_svn7768_114
><td class="source"> * synchronized (to say nothing of the translation issues), while targeting<br></td></tr
><tr
id=sl_svn7768_115
><td class="source"> * them for their separate audiences. Ouch.<br></td></tr
><tr
id=sl_svn7768_116
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_117
><td class="source"> * We&#39;re working right now on synchronizing the two references, so the website reference<br></td></tr
><tr
id=sl_svn7768_118
><td class="source"> * is generated from the javadoc comments. Yay.<br></td></tr
><tr
id=sl_svn7768_119
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_120
><td class="source"> * @webref rendering<br></td></tr
><tr
id=sl_svn7768_121
><td class="source"> * @instanceName graphics any object of the type PGraphics<br></td></tr
><tr
id=sl_svn7768_122
><td class="source"> * @usage Web &amp;amp; Application<br></td></tr
><tr
id=sl_svn7768_123
><td class="source"> * @see processing.core.PApplet#createGraphics(int, int, String)<br></td></tr
><tr
id=sl_svn7768_124
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_125
><td class="source">public class PGraphics extends PImage implements PConstants {<br></td></tr
><tr
id=sl_svn7768_126
><td class="source"><br></td></tr
><tr
id=sl_svn7768_127
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_128
><td class="source"><br></td></tr
><tr
id=sl_svn7768_129
><td class="source"> // width and height are already inherited from PImage<br></td></tr
><tr
id=sl_svn7768_130
><td class="source"><br></td></tr
><tr
id=sl_svn7768_131
><td class="source"><br></td></tr
><tr
id=sl_svn7768_132
><td class="source"> /// width minus one (useful for many calculations)<br></td></tr
><tr
id=sl_svn7768_133
><td class="source"> protected int width1;<br></td></tr
><tr
id=sl_svn7768_134
><td class="source"><br></td></tr
><tr
id=sl_svn7768_135
><td class="source"> /// height minus one (useful for many calculations)<br></td></tr
><tr
id=sl_svn7768_136
><td class="source"> protected int height1;<br></td></tr
><tr
id=sl_svn7768_137
><td class="source"><br></td></tr
><tr
id=sl_svn7768_138
><td class="source"> /// width * height (useful for many calculations)<br></td></tr
><tr
id=sl_svn7768_139
><td class="source"> public int pixelCount;<br></td></tr
><tr
id=sl_svn7768_140
><td class="source"><br></td></tr
><tr
id=sl_svn7768_141
><td class="source"> /// true if smoothing is enabled (read-only)<br></td></tr
><tr
id=sl_svn7768_142
><td class="source"> public boolean smooth = false;<br></td></tr
><tr
id=sl_svn7768_143
><td class="source"><br></td></tr
><tr
id=sl_svn7768_144
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_145
><td class="source"><br></td></tr
><tr
id=sl_svn7768_146
><td class="source"> /// true if defaults() has been called a first time<br></td></tr
><tr
id=sl_svn7768_147
><td class="source"> protected boolean settingsInited;<br></td></tr
><tr
id=sl_svn7768_148
><td class="source"><br></td></tr
><tr
id=sl_svn7768_149
><td class="source"> /// set to a PGraphics object being used inside a beginRaw/endRaw() block<br></td></tr
><tr
id=sl_svn7768_150
><td class="source"> protected PGraphics raw;<br></td></tr
><tr
id=sl_svn7768_151
><td class="source"><br></td></tr
><tr
id=sl_svn7768_152
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_153
><td class="source"><br></td></tr
><tr
id=sl_svn7768_154
><td class="source"> /** path to the file being saved for this renderer (if any) */<br></td></tr
><tr
id=sl_svn7768_155
><td class="source"> protected String path;<br></td></tr
><tr
id=sl_svn7768_156
><td class="source"><br></td></tr
><tr
id=sl_svn7768_157
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_158
><td class="source"> * true if this is the main drawing surface for a particular sketch.<br></td></tr
><tr
id=sl_svn7768_159
><td class="source"> * This would be set to false for an offscreen buffer or if it were<br></td></tr
><tr
id=sl_svn7768_160
><td class="source"> * created any other way than size(). When this is set, the listeners<br></td></tr
><tr
id=sl_svn7768_161
><td class="source"> * are also added to the sketch.<br></td></tr
><tr
id=sl_svn7768_162
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_163
><td class="source"> protected boolean primarySurface;<br></td></tr
><tr
id=sl_svn7768_164
><td class="source"><br></td></tr
><tr
id=sl_svn7768_165
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_166
><td class="source"><br></td></tr
><tr
id=sl_svn7768_167
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_168
><td class="source"> * Array of hint[] items. These are hacks to get around various<br></td></tr
><tr
id=sl_svn7768_169
><td class="source"> * temporary workarounds inside the environment.<br></td></tr
><tr
id=sl_svn7768_170
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_171
><td class="source"> * Note that this array cannot be static, as a hint() may result in a<br></td></tr
><tr
id=sl_svn7768_172
><td class="source"> * runtime change specific to a renderer. For instance, calling<br></td></tr
><tr
id=sl_svn7768_173
><td class="source"> * hint(DISABLE_DEPTH_TEST) has to call glDisable() right away on an<br></td></tr
><tr
id=sl_svn7768_174
><td class="source"> * instance of PGraphicsOpenGL.<br></td></tr
><tr
id=sl_svn7768_175
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_176
><td class="source"> * The hints[] array is allocated early on because it might<br></td></tr
><tr
id=sl_svn7768_177
><td class="source"> * be used inside beginDraw(), allocate(), etc.<br></td></tr
><tr
id=sl_svn7768_178
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_179
><td class="source"> protected boolean[] hints = new boolean[HINT_COUNT];<br></td></tr
><tr
id=sl_svn7768_180
><td class="source"><br></td></tr
><tr
id=sl_svn7768_181
><td class="source"><br></td></tr
><tr
id=sl_svn7768_182
><td class="source"> ////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_183
><td class="source"><br></td></tr
><tr
id=sl_svn7768_184
><td class="source"> // STYLE PROPERTIES<br></td></tr
><tr
id=sl_svn7768_185
><td class="source"><br></td></tr
><tr
id=sl_svn7768_186
><td class="source"> // Also inherits imageMode() and smooth() (among others) from PImage.<br></td></tr
><tr
id=sl_svn7768_187
><td class="source"><br></td></tr
><tr
id=sl_svn7768_188
><td class="source"> /** The current colorMode */<br></td></tr
><tr
id=sl_svn7768_189
><td class="source"> public int colorMode; // = RGB;<br></td></tr
><tr
id=sl_svn7768_190
><td class="source"><br></td></tr
><tr
id=sl_svn7768_191
><td class="source"> /** Max value for red (or hue) set by colorMode */<br></td></tr
><tr
id=sl_svn7768_192
><td class="source"> public float colorModeX; // = 255;<br></td></tr
><tr
id=sl_svn7768_193
><td class="source"><br></td></tr
><tr
id=sl_svn7768_194
><td class="source"> /** Max value for green (or saturation) set by colorMode */<br></td></tr
><tr
id=sl_svn7768_195
><td class="source"> public float colorModeY; // = 255;<br></td></tr
><tr
id=sl_svn7768_196
><td class="source"><br></td></tr
><tr
id=sl_svn7768_197
><td class="source"> /** Max value for blue (or value) set by colorMode */<br></td></tr
><tr
id=sl_svn7768_198
><td class="source"> public float colorModeZ; // = 255;<br></td></tr
><tr
id=sl_svn7768_199
><td class="source"><br></td></tr
><tr
id=sl_svn7768_200
><td class="source"> /** Max value for alpha set by colorMode */<br></td></tr
><tr
id=sl_svn7768_201
><td class="source"> public float colorModeA; // = 255;<br></td></tr
><tr
id=sl_svn7768_202
><td class="source"><br></td></tr
><tr
id=sl_svn7768_203
><td class="source"> /** True if colors are not in the range 0..1 */<br></td></tr
><tr
id=sl_svn7768_204
><td class="source"> boolean colorModeScale; // = true;<br></td></tr
><tr
id=sl_svn7768_205
><td class="source"><br></td></tr
><tr
id=sl_svn7768_206
><td class="source"> /** True if colorMode(RGB, 255) */<br></td></tr
><tr
id=sl_svn7768_207
><td class="source"> boolean colorModeDefault; // = true;<br></td></tr
><tr
id=sl_svn7768_208
><td class="source"><br></td></tr
><tr
id=sl_svn7768_209
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_210
><td class="source"><br></td></tr
><tr
id=sl_svn7768_211
><td class="source"> // Tint color for images<br></td></tr
><tr
id=sl_svn7768_212
><td class="source"><br></td></tr
><tr
id=sl_svn7768_213
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_214
><td class="source"> * True if tint() is enabled (read-only).<br></td></tr
><tr
id=sl_svn7768_215
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_216
><td class="source"> * Using tint/tintColor seems a better option for naming than<br></td></tr
><tr
id=sl_svn7768_217
><td class="source"> * tintEnabled/tint because the latter seems ugly, even though<br></td></tr
><tr
id=sl_svn7768_218
><td class="source"> * g.tint as the actual color seems a little more intuitive,<br></td></tr
><tr
id=sl_svn7768_219
><td class="source"> * it&#39;s just that g.tintEnabled is even more unintuitive.<br></td></tr
><tr
id=sl_svn7768_220
><td class="source"> * Same goes for fill and stroke, et al.<br></td></tr
><tr
id=sl_svn7768_221
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_222
><td class="source"> public boolean tint;<br></td></tr
><tr
id=sl_svn7768_223
><td class="source"><br></td></tr
><tr
id=sl_svn7768_224
><td class="source"> /** tint that was last set (read-only) */<br></td></tr
><tr
id=sl_svn7768_225
><td class="source"> public int tintColor;<br></td></tr
><tr
id=sl_svn7768_226
><td class="source"><br></td></tr
><tr
id=sl_svn7768_227
><td class="source"> protected boolean tintAlpha;<br></td></tr
><tr
id=sl_svn7768_228
><td class="source"> protected float tintR, tintG, tintB, tintA;<br></td></tr
><tr
id=sl_svn7768_229
><td class="source"> protected int tintRi, tintGi, tintBi, tintAi;<br></td></tr
><tr
id=sl_svn7768_230
><td class="source"><br></td></tr
><tr
id=sl_svn7768_231
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_232
><td class="source"><br></td></tr
><tr
id=sl_svn7768_233
><td class="source"> // Fill color<br></td></tr
><tr
id=sl_svn7768_234
><td class="source"><br></td></tr
><tr
id=sl_svn7768_235
><td class="source"> /** true if fill() is enabled, (read-only) */<br></td></tr
><tr
id=sl_svn7768_236
><td class="source"> public boolean fill;<br></td></tr
><tr
id=sl_svn7768_237
><td class="source"><br></td></tr
><tr
id=sl_svn7768_238
><td class="source"> /** fill that was last set (read-only) */<br></td></tr
><tr
id=sl_svn7768_239
><td class="source"> public int fillColor = 0xffFFFFFF;<br></td></tr
><tr
id=sl_svn7768_240
><td class="source"><br></td></tr
><tr
id=sl_svn7768_241
><td class="source"> protected boolean fillAlpha;<br></td></tr
><tr
id=sl_svn7768_242
><td class="source"> protected float fillR, fillG, fillB, fillA;<br></td></tr
><tr
id=sl_svn7768_243
><td class="source"> protected int fillRi, fillGi, fillBi, fillAi;<br></td></tr
><tr
id=sl_svn7768_244
><td class="source"><br></td></tr
><tr
id=sl_svn7768_245
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_246
><td class="source"><br></td></tr
><tr
id=sl_svn7768_247
><td class="source"> // Stroke color<br></td></tr
><tr
id=sl_svn7768_248
><td class="source"><br></td></tr
><tr
id=sl_svn7768_249
><td class="source"> /** true if stroke() is enabled, (read-only) */<br></td></tr
><tr
id=sl_svn7768_250
><td class="source"> public boolean stroke;<br></td></tr
><tr
id=sl_svn7768_251
><td class="source"><br></td></tr
><tr
id=sl_svn7768_252
><td class="source"> /** stroke that was last set (read-only) */<br></td></tr
><tr
id=sl_svn7768_253
><td class="source"> public int strokeColor = 0xff000000;<br></td></tr
><tr
id=sl_svn7768_254
><td class="source"><br></td></tr
><tr
id=sl_svn7768_255
><td class="source"> protected boolean strokeAlpha;<br></td></tr
><tr
id=sl_svn7768_256
><td class="source"> protected float strokeR, strokeG, strokeB, strokeA;<br></td></tr
><tr
id=sl_svn7768_257
><td class="source"> protected int strokeRi, strokeGi, strokeBi, strokeAi;<br></td></tr
><tr
id=sl_svn7768_258
><td class="source"><br></td></tr
><tr
id=sl_svn7768_259
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_260
><td class="source"><br></td></tr
><tr
id=sl_svn7768_261
><td class="source"> // Additional stroke properties<br></td></tr
><tr
id=sl_svn7768_262
><td class="source"><br></td></tr
><tr
id=sl_svn7768_263
><td class="source"> static protected final float DEFAULT_STROKE_WEIGHT = 1;<br></td></tr
><tr
id=sl_svn7768_264
><td class="source"> static protected final int DEFAULT_STROKE_JOIN = MITER;<br></td></tr
><tr
id=sl_svn7768_265
><td class="source"> static protected final int DEFAULT_STROKE_CAP = ROUND;<br></td></tr
><tr
id=sl_svn7768_266
><td class="source"><br></td></tr
><tr
id=sl_svn7768_267
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_268
><td class="source"> * Last value set by strokeWeight() (read-only). This has a default<br></td></tr
><tr
id=sl_svn7768_269
><td class="source"> * setting, rather than fighting with renderers about whether that<br></td></tr
><tr
id=sl_svn7768_270
><td class="source"> * renderer supports thick lines.<br></td></tr
><tr
id=sl_svn7768_271
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_272
><td class="source"> public float strokeWeight = DEFAULT_STROKE_WEIGHT;<br></td></tr
><tr
id=sl_svn7768_273
><td class="source"><br></td></tr
><tr
id=sl_svn7768_274
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_275
><td class="source"> * Set by strokeJoin() (read-only). This has a default setting<br></td></tr
><tr
id=sl_svn7768_276
><td class="source"> * so that strokeJoin() need not be called by defaults,<br></td></tr
><tr
id=sl_svn7768_277
><td class="source"> * because subclasses may not implement it (i.e. PGraphicsGL)<br></td></tr
><tr
id=sl_svn7768_278
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_279
><td class="source"> public int strokeJoin = DEFAULT_STROKE_JOIN;<br></td></tr
><tr
id=sl_svn7768_280
><td class="source"><br></td></tr
><tr
id=sl_svn7768_281
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_282
><td class="source"> * Set by strokeCap() (read-only). This has a default setting<br></td></tr
><tr
id=sl_svn7768_283
><td class="source"> * so that strokeCap() need not be called by defaults,<br></td></tr
><tr
id=sl_svn7768_284
><td class="source"> * because subclasses may not implement it (i.e. PGraphicsGL)<br></td></tr
><tr
id=sl_svn7768_285
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_286
><td class="source"> public int strokeCap = DEFAULT_STROKE_CAP;<br></td></tr
><tr
id=sl_svn7768_287
><td class="source"><br></td></tr
><tr
id=sl_svn7768_288
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_289
><td class="source"><br></td></tr
><tr
id=sl_svn7768_290
><td class="source"> // Shape placement properties<br></td></tr
><tr
id=sl_svn7768_291
><td class="source"><br></td></tr
><tr
id=sl_svn7768_292
><td class="source"> // imageMode() is inherited from PImage<br></td></tr
><tr
id=sl_svn7768_293
><td class="source"><br></td></tr
><tr
id=sl_svn7768_294
><td class="source"> /** The current rect mode (read-only) */<br></td></tr
><tr
id=sl_svn7768_295
><td class="source"> public int rectMode;<br></td></tr
><tr
id=sl_svn7768_296
><td class="source"><br></td></tr
><tr
id=sl_svn7768_297
><td class="source"> /** The current ellipse mode (read-only) */<br></td></tr
><tr
id=sl_svn7768_298
><td class="source"> public int ellipseMode;<br></td></tr
><tr
id=sl_svn7768_299
><td class="source"><br></td></tr
><tr
id=sl_svn7768_300
><td class="source"> /** The current shape alignment mode (read-only) */<br></td></tr
><tr
id=sl_svn7768_301
><td class="source"> public int shapeMode;<br></td></tr
><tr
id=sl_svn7768_302
><td class="source"><br></td></tr
><tr
id=sl_svn7768_303
><td class="source"> /** The current image alignment (read-only) */<br></td></tr
><tr
id=sl_svn7768_304
><td class="source"> public int imageMode = CORNER;<br></td></tr
><tr
id=sl_svn7768_305
><td class="source"><br></td></tr
><tr
id=sl_svn7768_306
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_307
><td class="source"><br></td></tr
><tr
id=sl_svn7768_308
><td class="source"> // Text and font properties<br></td></tr
><tr
id=sl_svn7768_309
><td class="source"><br></td></tr
><tr
id=sl_svn7768_310
><td class="source"> /** The current text font (read-only) */<br></td></tr
><tr
id=sl_svn7768_311
><td class="source"> public PFont textFont;<br></td></tr
><tr
id=sl_svn7768_312
><td class="source"><br></td></tr
><tr
id=sl_svn7768_313
><td class="source"> /** The current text align (read-only) */<br></td></tr
><tr
id=sl_svn7768_314
><td class="source"> public int textAlign = LEFT;<br></td></tr
><tr
id=sl_svn7768_315
><td class="source"><br></td></tr
><tr
id=sl_svn7768_316
><td class="source"> /** The current vertical text alignment (read-only) */<br></td></tr
><tr
id=sl_svn7768_317
><td class="source"> public int textAlignY = BASELINE;<br></td></tr
><tr
id=sl_svn7768_318
><td class="source"><br></td></tr
><tr
id=sl_svn7768_319
><td class="source"> /** The current text mode (read-only) */<br></td></tr
><tr
id=sl_svn7768_320
><td class="source"> public int textMode = MODEL;<br></td></tr
><tr
id=sl_svn7768_321
><td class="source"><br></td></tr
><tr
id=sl_svn7768_322
><td class="source"> /** The current text size (read-only) */<br></td></tr
><tr
id=sl_svn7768_323
><td class="source"> public float textSize;<br></td></tr
><tr
id=sl_svn7768_324
><td class="source"><br></td></tr
><tr
id=sl_svn7768_325
><td class="source"> /** The current text leading (read-only) */<br></td></tr
><tr
id=sl_svn7768_326
><td class="source"> public float textLeading;<br></td></tr
><tr
id=sl_svn7768_327
><td class="source"><br></td></tr
><tr
id=sl_svn7768_328
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_329
><td class="source"><br></td></tr
><tr
id=sl_svn7768_330
><td class="source"> // Material properties<br></td></tr
><tr
id=sl_svn7768_331
><td class="source"><br></td></tr
><tr
id=sl_svn7768_332
><td class="source">// PMaterial material;<br></td></tr
><tr
id=sl_svn7768_333
><td class="source">// PMaterial[] materialStack;<br></td></tr
><tr
id=sl_svn7768_334
><td class="source">// int materialStackPointer;<br></td></tr
><tr
id=sl_svn7768_335
><td class="source"><br></td></tr
><tr
id=sl_svn7768_336
><td class="source"> public float ambientR, ambientG, ambientB;<br></td></tr
><tr
id=sl_svn7768_337
><td class="source"> public float specularR, specularG, specularB;<br></td></tr
><tr
id=sl_svn7768_338
><td class="source"> public float emissiveR, emissiveG, emissiveB;<br></td></tr
><tr
id=sl_svn7768_339
><td class="source"> public float shininess;<br></td></tr
><tr
id=sl_svn7768_340
><td class="source"><br></td></tr
><tr
id=sl_svn7768_341
><td class="source"><br></td></tr
><tr
id=sl_svn7768_342
><td class="source"> // Style stack<br></td></tr
><tr
id=sl_svn7768_343
><td class="source"><br></td></tr
><tr
id=sl_svn7768_344
><td class="source"> static final int STYLE_STACK_DEPTH = 64;<br></td></tr
><tr
id=sl_svn7768_345
><td class="source"> PStyle[] styleStack = new PStyle[STYLE_STACK_DEPTH];<br></td></tr
><tr
id=sl_svn7768_346
><td class="source"> int styleStackDepth;<br></td></tr
><tr
id=sl_svn7768_347
><td class="source"><br></td></tr
><tr
id=sl_svn7768_348
><td class="source"><br></td></tr
><tr
id=sl_svn7768_349
><td class="source"> ////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_350
><td class="source"><br></td></tr
><tr
id=sl_svn7768_351
><td class="source"><br></td></tr
><tr
id=sl_svn7768_352
><td class="source"> /** Last background color that was set, zero if an image */<br></td></tr
><tr
id=sl_svn7768_353
><td class="source"> public int backgroundColor = 0xffCCCCCC;<br></td></tr
><tr
id=sl_svn7768_354
><td class="source"><br></td></tr
><tr
id=sl_svn7768_355
><td class="source"> protected boolean backgroundAlpha;<br></td></tr
><tr
id=sl_svn7768_356
><td class="source"> protected float backgroundR, backgroundG, backgroundB, backgroundA;<br></td></tr
><tr
id=sl_svn7768_357
><td class="source"> protected int backgroundRi, backgroundGi, backgroundBi, backgroundAi;<br></td></tr
><tr
id=sl_svn7768_358
><td class="source"><br></td></tr
><tr
id=sl_svn7768_359
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_360
><td class="source"><br></td></tr
><tr
id=sl_svn7768_361
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_362
><td class="source"> * Current model-view matrix transformation of the form m[row][column],<br></td></tr
><tr
id=sl_svn7768_363
><td class="source"> * which is a &quot;column vector&quot; (as opposed to &quot;row vector&quot;) matrix.<br></td></tr
><tr
id=sl_svn7768_364
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_365
><td class="source">// PMatrix matrix;<br></td></tr
><tr
id=sl_svn7768_366
><td class="source">// public float m00, m01, m02, m03;<br></td></tr
><tr
id=sl_svn7768_367
><td class="source">// public float m10, m11, m12, m13;<br></td></tr
><tr
id=sl_svn7768_368
><td class="source">// public float m20, m21, m22, m23;<br></td></tr
><tr
id=sl_svn7768_369
><td class="source">// public float m30, m31, m32, m33;<br></td></tr
><tr
id=sl_svn7768_370
><td class="source"><br></td></tr
><tr
id=sl_svn7768_371
><td class="source">// static final int MATRIX_STACK_DEPTH = 32;<br></td></tr
><tr
id=sl_svn7768_372
><td class="source">// float[][] matrixStack = new float[MATRIX_STACK_DEPTH][16];<br></td></tr
><tr
id=sl_svn7768_373
><td class="source">// float[][] matrixInvStack = new float[MATRIX_STACK_DEPTH][16];<br></td></tr
><tr
id=sl_svn7768_374
><td class="source">// int matrixStackDepth;<br></td></tr
><tr
id=sl_svn7768_375
><td class="source"><br></td></tr
><tr
id=sl_svn7768_376
><td class="source"> static final int MATRIX_STACK_DEPTH = 32;<br></td></tr
><tr
id=sl_svn7768_377
><td class="source"><br></td></tr
><tr
id=sl_svn7768_378
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_379
><td class="source"><br></td></tr
><tr
id=sl_svn7768_380
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_381
><td class="source"> * Java AWT Image object associated with this renderer. For P2D and P3D,<br></td></tr
><tr
id=sl_svn7768_382
><td class="source"> * this will be associated with their MemoryImageSource. For PGraphicsJava2D,<br></td></tr
><tr
id=sl_svn7768_383
><td class="source"> * it will be the offscreen drawing buffer.<br></td></tr
><tr
id=sl_svn7768_384
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_385
><td class="source"> public Image image;<br></td></tr
><tr
id=sl_svn7768_386
><td class="source"><br></td></tr
><tr
id=sl_svn7768_387
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_388
><td class="source"><br></td></tr
><tr
id=sl_svn7768_389
><td class="source"> // internal color for setting/calculating<br></td></tr
><tr
id=sl_svn7768_390
><td class="source"> protected float calcR, calcG, calcB, calcA;<br></td></tr
><tr
id=sl_svn7768_391
><td class="source"> protected int calcRi, calcGi, calcBi, calcAi;<br></td></tr
><tr
id=sl_svn7768_392
><td class="source"> protected int calcColor;<br></td></tr
><tr
id=sl_svn7768_393
><td class="source"> protected boolean calcAlpha;<br></td></tr
><tr
id=sl_svn7768_394
><td class="source"><br></td></tr
><tr
id=sl_svn7768_395
><td class="source"> /** The last RGB value converted to HSB */<br></td></tr
><tr
id=sl_svn7768_396
><td class="source"> int cacheHsbKey;<br></td></tr
><tr
id=sl_svn7768_397
><td class="source"> /** Result of the last conversion to HSB */<br></td></tr
><tr
id=sl_svn7768_398
><td class="source"> float[] cacheHsbValue = new float[3];<br></td></tr
><tr
id=sl_svn7768_399
><td class="source"><br></td></tr
><tr
id=sl_svn7768_400
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_401
><td class="source"><br></td></tr
><tr
id=sl_svn7768_402
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_403
><td class="source"> * Type of shape passed to beginShape(),<br></td></tr
><tr
id=sl_svn7768_404
><td class="source"> * zero if no shape is currently being drawn.<br></td></tr
><tr
id=sl_svn7768_405
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_406
><td class="source"> protected int shape;<br></td></tr
><tr
id=sl_svn7768_407
><td class="source"><br></td></tr
><tr
id=sl_svn7768_408
><td class="source"> // vertices<br></td></tr
><tr
id=sl_svn7768_409
><td class="source"> public static final int DEFAULT_VERTICES = 512;<br></td></tr
><tr
id=sl_svn7768_410
><td class="source"> protected float vertices[][] =<br></td></tr
><tr
id=sl_svn7768_411
><td class="source"> new float[DEFAULT_VERTICES][VERTEX_FIELD_COUNT];<br></td></tr
><tr
id=sl_svn7768_412
><td class="source"> protected int vertexCount; // total number of vertices<br></td></tr
><tr
id=sl_svn7768_413
><td class="source"><br></td></tr
><tr
id=sl_svn7768_414
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_415
><td class="source"><br></td></tr
><tr
id=sl_svn7768_416
><td class="source"> protected boolean bezierInited = false;<br></td></tr
><tr
id=sl_svn7768_417
><td class="source"> public int bezierDetail = 20;<br></td></tr
><tr
id=sl_svn7768_418
><td class="source"><br></td></tr
><tr
id=sl_svn7768_419
><td class="source"> // used by both curve and bezier, so just init here<br></td></tr
><tr
id=sl_svn7768_420
><td class="source"> protected PMatrix3D bezierBasisMatrix =<br></td></tr
><tr
id=sl_svn7768_421
><td class="source"> new PMatrix3D(-1, 3, -3, 1,<br></td></tr
><tr
id=sl_svn7768_422
><td class="source"> 3, -6, 3, 0,<br></td></tr
><tr
id=sl_svn7768_423
><td class="source"> -3, 3, 0, 0,<br></td></tr
><tr
id=sl_svn7768_424
><td class="source"> 1, 0, 0, 0);<br></td></tr
><tr
id=sl_svn7768_425
><td class="source"><br></td></tr
><tr
id=sl_svn7768_426
><td class="source"> //protected PMatrix3D bezierForwardMatrix;<br></td></tr
><tr
id=sl_svn7768_427
><td class="source"> protected PMatrix3D bezierDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_428
><td class="source"><br></td></tr
><tr
id=sl_svn7768_429
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_430
><td class="source"><br></td></tr
><tr
id=sl_svn7768_431
><td class="source"> protected boolean curveInited = false;<br></td></tr
><tr
id=sl_svn7768_432
><td class="source"> protected int curveDetail = 20;<br></td></tr
><tr
id=sl_svn7768_433
><td class="source"> public float curveTightness = 0;<br></td></tr
><tr
id=sl_svn7768_434
><td class="source"> // catmull-rom basis matrix, perhaps with optional s parameter<br></td></tr
><tr
id=sl_svn7768_435
><td class="source"> protected PMatrix3D curveBasisMatrix;<br></td></tr
><tr
id=sl_svn7768_436
><td class="source"> protected PMatrix3D curveDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_437
><td class="source"><br></td></tr
><tr
id=sl_svn7768_438
><td class="source"> protected PMatrix3D bezierBasisInverse;<br></td></tr
><tr
id=sl_svn7768_439
><td class="source"> protected PMatrix3D curveToBezierMatrix;<br></td></tr
><tr
id=sl_svn7768_440
><td class="source"><br></td></tr
><tr
id=sl_svn7768_441
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_442
><td class="source"><br></td></tr
><tr
id=sl_svn7768_443
><td class="source"> // spline vertices<br></td></tr
><tr
id=sl_svn7768_444
><td class="source"><br></td></tr
><tr
id=sl_svn7768_445
><td class="source"> protected float curveVertices[][];<br></td></tr
><tr
id=sl_svn7768_446
><td class="source"> protected int curveVertexCount;<br></td></tr
><tr
id=sl_svn7768_447
><td class="source"><br></td></tr
><tr
id=sl_svn7768_448
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_449
><td class="source"><br></td></tr
><tr
id=sl_svn7768_450
><td class="source"> // precalculate sin/cos lookup tables [toxi]<br></td></tr
><tr
id=sl_svn7768_451
><td class="source"> // circle resolution is determined from the actual used radii<br></td></tr
><tr
id=sl_svn7768_452
><td class="source"> // passed to ellipse() method. this will automatically take any<br></td></tr
><tr
id=sl_svn7768_453
><td class="source"> // scale transformations into account too<br></td></tr
><tr
id=sl_svn7768_454
><td class="source"><br></td></tr
><tr
id=sl_svn7768_455
><td class="source"> // [toxi 031031]<br></td></tr
><tr
id=sl_svn7768_456
><td class="source"> // changed table&#39;s precision to 0.5 degree steps<br></td></tr
><tr
id=sl_svn7768_457
><td class="source"> // introduced new vars for more flexible code<br></td></tr
><tr
id=sl_svn7768_458
><td class="source"> static final protected float sinLUT[];<br></td></tr
><tr
id=sl_svn7768_459
><td class="source"> static final protected float cosLUT[];<br></td></tr
><tr
id=sl_svn7768_460
><td class="source"> static final protected float SINCOS_PRECISION = 0.5f;<br></td></tr
><tr
id=sl_svn7768_461
><td class="source"> static final protected int SINCOS_LENGTH = (int) (360f / SINCOS_PRECISION);<br></td></tr
><tr
id=sl_svn7768_462
><td class="source"> static {<br></td></tr
><tr
id=sl_svn7768_463
><td class="source"> sinLUT = new float[SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_464
><td class="source"> cosLUT = new float[SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_465
><td class="source"> for (int i = 0; i &lt; SINCOS_LENGTH; i++) {<br></td></tr
><tr
id=sl_svn7768_466
><td class="source"> sinLUT[i] = (float) Math.sin(i * DEG_TO_RAD * SINCOS_PRECISION);<br></td></tr
><tr
id=sl_svn7768_467
><td class="source"> cosLUT[i] = (float) Math.cos(i * DEG_TO_RAD * SINCOS_PRECISION);<br></td></tr
><tr
id=sl_svn7768_468
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_469
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_470
><td class="source"><br></td></tr
><tr
id=sl_svn7768_471
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_472
><td class="source"><br></td></tr
><tr
id=sl_svn7768_473
><td class="source"> /** The current font if a Java version of it is installed */<br></td></tr
><tr
id=sl_svn7768_474
><td class="source"> //protected Font textFontNative;<br></td></tr
><tr
id=sl_svn7768_475
><td class="source"><br></td></tr
><tr
id=sl_svn7768_476
><td class="source"> /** Metrics for the current native Java font */<br></td></tr
><tr
id=sl_svn7768_477
><td class="source"> //protected FontMetrics textFontNativeMetrics;<br></td></tr
><tr
id=sl_svn7768_478
><td class="source"><br></td></tr
><tr
id=sl_svn7768_479
><td class="source"> /** Last text position, because text often mixed on lines together */<br></td></tr
><tr
id=sl_svn7768_480
><td class="source"> protected float textX, textY, textZ;<br></td></tr
><tr
id=sl_svn7768_481
><td class="source"><br></td></tr
><tr
id=sl_svn7768_482
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_483
><td class="source"> * Internal buffer used by the text() functions<br></td></tr
><tr
id=sl_svn7768_484
><td class="source"> * because the String object is slow<br></td></tr
><tr
id=sl_svn7768_485
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_486
><td class="source"> protected char[] textBuffer = new char[8 * 1024];<br></td></tr
><tr
id=sl_svn7768_487
><td class="source"> protected char[] textWidthBuffer = new char[8 * 1024];<br></td></tr
><tr
id=sl_svn7768_488
><td class="source"><br></td></tr
><tr
id=sl_svn7768_489
><td class="source"> protected int textBreakCount;<br></td></tr
><tr
id=sl_svn7768_490
><td class="source"> protected int[] textBreakStart;<br></td></tr
><tr
id=sl_svn7768_491
><td class="source"> protected int[] textBreakStop;<br></td></tr
><tr
id=sl_svn7768_492
><td class="source"><br></td></tr
><tr
id=sl_svn7768_493
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_494
><td class="source"><br></td></tr
><tr
id=sl_svn7768_495
><td class="source"> public boolean edge = true;<br></td></tr
><tr
id=sl_svn7768_496
><td class="source"><br></td></tr
><tr
id=sl_svn7768_497
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_498
><td class="source"><br></td></tr
><tr
id=sl_svn7768_499
><td class="source"> /// normal calculated per triangle<br></td></tr
><tr
id=sl_svn7768_500
><td class="source"> static protected final int NORMAL_MODE_AUTO = 0;<br></td></tr
><tr
id=sl_svn7768_501
><td class="source"> /// one normal manually specified per shape<br></td></tr
><tr
id=sl_svn7768_502
><td class="source"> static protected final int NORMAL_MODE_SHAPE = 1;<br></td></tr
><tr
id=sl_svn7768_503
><td class="source"> /// normals specified for each shape vertex<br></td></tr
><tr
id=sl_svn7768_504
><td class="source"> static protected final int NORMAL_MODE_VERTEX = 2;<br></td></tr
><tr
id=sl_svn7768_505
><td class="source"><br></td></tr
><tr
id=sl_svn7768_506
><td class="source"> /// Current mode for normals, one of AUTO, SHAPE, or VERTEX<br></td></tr
><tr
id=sl_svn7768_507
><td class="source"> protected int normalMode;<br></td></tr
><tr
id=sl_svn7768_508
><td class="source"><br></td></tr
><tr
id=sl_svn7768_509
><td class="source"> /// Keep track of how many calls to normal, to determine the mode.<br></td></tr
><tr
id=sl_svn7768_510
><td class="source"> //protected int normalCount;<br></td></tr
><tr
id=sl_svn7768_511
><td class="source"><br></td></tr
><tr
id=sl_svn7768_512
><td class="source"> protected boolean autoNormal;<br></td></tr
><tr
id=sl_svn7768_513
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_514
><td class="source"> /** Current normal vector. */<br></td></tr
><tr
id=sl_svn7768_515
><td class="source"> public float normalX, normalY, normalZ;<br></td></tr
><tr
id=sl_svn7768_516
><td class="source"><br></td></tr
><tr
id=sl_svn7768_517
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_518
><td class="source"><br></td></tr
><tr
id=sl_svn7768_519
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_520
><td class="source"> * Sets whether texture coordinates passed to<br></td></tr
><tr
id=sl_svn7768_521
><td class="source"> * vertex() calls will be based on coordinates that are<br></td></tr
><tr
id=sl_svn7768_522
><td class="source"> * based on the IMAGE or NORMALIZED.<br></td></tr
><tr
id=sl_svn7768_523
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_524
><td class="source"> public int textureMode;<br></td></tr
><tr
id=sl_svn7768_525
><td class="source"><br></td></tr
><tr
id=sl_svn7768_526
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_527
><td class="source"> * Current horizontal coordinate for texture, will always<br></td></tr
><tr
id=sl_svn7768_528
><td class="source"> * be between 0 and 1, even if using textureMode(IMAGE).<br></td></tr
><tr
id=sl_svn7768_529
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_530
><td class="source"> public float textureU;<br></td></tr
><tr
id=sl_svn7768_531
><td class="source"><br></td></tr
><tr
id=sl_svn7768_532
><td class="source"> /** Current vertical coordinate for texture, see above. */<br></td></tr
><tr
id=sl_svn7768_533
><td class="source"> public float textureV;<br></td></tr
><tr
id=sl_svn7768_534
><td class="source"><br></td></tr
><tr
id=sl_svn7768_535
><td class="source"> /** Current image being used as a texture */<br></td></tr
><tr
id=sl_svn7768_536
><td class="source"> public PImage textureImage;<br></td></tr
><tr
id=sl_svn7768_537
><td class="source"><br></td></tr
><tr
id=sl_svn7768_538
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_539
><td class="source"><br></td></tr
><tr
id=sl_svn7768_540
><td class="source"> // [toxi031031] new &amp; faster sphere code w/ support flexibile resolutions<br></td></tr
><tr
id=sl_svn7768_541
><td class="source"> // will be set by sphereDetail() or 1st call to sphere()<br></td></tr
><tr
id=sl_svn7768_542
><td class="source"> float sphereX[], sphereY[], sphereZ[];<br></td></tr
><tr
id=sl_svn7768_543
><td class="source"><br></td></tr
><tr
id=sl_svn7768_544
><td class="source"> /// Number of U steps (aka &quot;theta&quot;) around longitudinally spanning 2*pi<br></td></tr
><tr
id=sl_svn7768_545
><td class="source"> public int sphereDetailU = 0;<br></td></tr
><tr
id=sl_svn7768_546
><td class="source"> /// Number of V steps (aka &quot;phi&quot;) along latitudinally top-to-bottom spanning pi<br></td></tr
><tr
id=sl_svn7768_547
><td class="source"> public int sphereDetailV = 0;<br></td></tr
><tr
id=sl_svn7768_548
><td class="source"><br></td></tr
><tr
id=sl_svn7768_549
><td class="source"><br></td></tr
><tr
id=sl_svn7768_550
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_551
><td class="source"><br></td></tr
><tr
id=sl_svn7768_552
><td class="source"> // INTERNAL<br></td></tr
><tr
id=sl_svn7768_553
><td class="source"><br></td></tr
><tr
id=sl_svn7768_554
><td class="source"><br></td></tr
><tr
id=sl_svn7768_555
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_556
><td class="source"> * Constructor for the PGraphics object. Use this to ensure that<br></td></tr
><tr
id=sl_svn7768_557
><td class="source"> * the defaults get set properly. In a subclass, use this(w, h)<br></td></tr
><tr
id=sl_svn7768_558
><td class="source"> * as the first line of a subclass&#39; constructor to properly set<br></td></tr
><tr
id=sl_svn7768_559
><td class="source"> * the internal fields and defaults.<br></td></tr
><tr
id=sl_svn7768_560
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_561
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_562
><td class="source"> public PGraphics() {<br></td></tr
><tr
id=sl_svn7768_563
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_564
><td class="source"><br></td></tr
><tr
id=sl_svn7768_565
><td class="source"><br></td></tr
><tr
id=sl_svn7768_566
><td class="source"> public void setParent(PApplet parent) { // ignore<br></td></tr
><tr
id=sl_svn7768_567
><td class="source"> this.parent = parent;<br></td></tr
><tr
id=sl_svn7768_568
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_569
><td class="source"><br></td></tr
><tr
id=sl_svn7768_570
><td class="source"><br></td></tr
><tr
id=sl_svn7768_571
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_572
><td class="source"> * Set (or unset) this as the main drawing surface. Meaning that it can<br></td></tr
><tr
id=sl_svn7768_573
><td class="source"> * safely be set to opaque (and given a default gray background), or anything<br></td></tr
><tr
id=sl_svn7768_574
><td class="source"> * else that goes along with that.<br></td></tr
><tr
id=sl_svn7768_575
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_576
><td class="source"> public void setPrimary(boolean primary) { // ignore<br></td></tr
><tr
id=sl_svn7768_577
><td class="source"> this.primarySurface = primary;<br></td></tr
><tr
id=sl_svn7768_578
><td class="source"><br></td></tr
><tr
id=sl_svn7768_579
><td class="source"> // base images must be opaque (for performance and general<br></td></tr
><tr
id=sl_svn7768_580
><td class="source"> // headache reasons.. argh, a semi-transparent opengl surface?)<br></td></tr
><tr
id=sl_svn7768_581
><td class="source"> // use createGraphics() if you want a transparent surface.<br></td></tr
><tr
id=sl_svn7768_582
><td class="source"> if (primarySurface) {<br></td></tr
><tr
id=sl_svn7768_583
><td class="source"> format = RGB;<br></td></tr
><tr
id=sl_svn7768_584
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_585
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_586
><td class="source"><br></td></tr
><tr
id=sl_svn7768_587
><td class="source"><br></td></tr
><tr
id=sl_svn7768_588
><td class="source"> public void setPath(String path) { // ignore<br></td></tr
><tr
id=sl_svn7768_589
><td class="source"> this.path = path;<br></td></tr
><tr
id=sl_svn7768_590
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_591
><td class="source"><br></td></tr
><tr
id=sl_svn7768_592
><td class="source"><br></td></tr
><tr
id=sl_svn7768_593
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_594
><td class="source"> * The final step in setting up a renderer, set its size of this renderer.<br></td></tr
><tr
id=sl_svn7768_595
><td class="source"> * This was formerly handled by the constructor, but instead it&#39;s been broken<br></td></tr
><tr
id=sl_svn7768_596
><td class="source"> * out so that setParent/setPrimary/setPath can be handled differently.<br></td></tr
><tr
id=sl_svn7768_597
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_598
><td class="source"> * Important that this is ignored by preproc.pl because otherwise it will<br></td></tr
><tr
id=sl_svn7768_599
><td class="source"> * override setSize() in PApplet/Applet/Component, which will 1) not call<br></td></tr
><tr
id=sl_svn7768_600
><td class="source"> * super.setSize(), and 2) will cause the renderer to be resized from the<br></td></tr
><tr
id=sl_svn7768_601
><td class="source"> * event thread (EDT), causing a nasty crash as it collides with the<br></td></tr
><tr
id=sl_svn7768_602
><td class="source"> * animation thread.<br></td></tr
><tr
id=sl_svn7768_603
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_604
><td class="source"> public void setSize(int w, int h) { // ignore<br></td></tr
><tr
id=sl_svn7768_605
><td class="source"> width = w;<br></td></tr
><tr
id=sl_svn7768_606
><td class="source"> height = h;<br></td></tr
><tr
id=sl_svn7768_607
><td class="source"> width1 = width - 1;<br></td></tr
><tr
id=sl_svn7768_608
><td class="source"> height1 = height - 1;<br></td></tr
><tr
id=sl_svn7768_609
><td class="source"><br></td></tr
><tr
id=sl_svn7768_610
><td class="source"> allocate();<br></td></tr
><tr
id=sl_svn7768_611
><td class="source"> reapplySettings();<br></td></tr
><tr
id=sl_svn7768_612
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_613
><td class="source"><br></td></tr
><tr
id=sl_svn7768_614
><td class="source"><br></td></tr
><tr
id=sl_svn7768_615
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_616
><td class="source"> * Allocate memory for this renderer. Generally will need to be implemented<br></td></tr
><tr
id=sl_svn7768_617
><td class="source"> * for all renderers.<br></td></tr
><tr
id=sl_svn7768_618
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_619
><td class="source"> protected void allocate() { }<br></td></tr
><tr
id=sl_svn7768_620
><td class="source"><br></td></tr
><tr
id=sl_svn7768_621
><td class="source"><br></td></tr
><tr
id=sl_svn7768_622
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_623
><td class="source"> * Handle any takedown for this graphics context.<br></td></tr
><tr
id=sl_svn7768_624
><td class="source"> * &lt;p&gt;<br></td></tr
><tr
id=sl_svn7768_625
><td class="source"> * This is called when a sketch is shut down and this renderer was<br></td></tr
><tr
id=sl_svn7768_626
><td class="source"> * specified using the size() command, or inside endRecord() and<br></td></tr
><tr
id=sl_svn7768_627
><td class="source"> * endRaw(), in order to shut things off.<br></td></tr
><tr
id=sl_svn7768_628
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_629
><td class="source"> public void dispose() { // ignore<br></td></tr
><tr
id=sl_svn7768_630
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_631
><td class="source"><br></td></tr
><tr
id=sl_svn7768_632
><td class="source"><br></td></tr
><tr
id=sl_svn7768_633
><td class="source"><br></td></tr
><tr
id=sl_svn7768_634
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_635
><td class="source"><br></td></tr
><tr
id=sl_svn7768_636
><td class="source"> // FRAME<br></td></tr
><tr
id=sl_svn7768_637
><td class="source"><br></td></tr
><tr
id=sl_svn7768_638
><td class="source"><br></td></tr
><tr
id=sl_svn7768_639
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_640
><td class="source"> * Some renderers have requirements re: when they are ready to draw.<br></td></tr
><tr
id=sl_svn7768_641
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_642
><td class="source"> public boolean canDraw() { // ignore<br></td></tr
><tr
id=sl_svn7768_643
><td class="source"> return true;<br></td></tr
><tr
id=sl_svn7768_644
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_645
><td class="source"><br></td></tr
><tr
id=sl_svn7768_646
><td class="source"><br></td></tr
><tr
id=sl_svn7768_647
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_648
><td class="source"> * Sets the default properties for a PGraphics object. It should be called before anything is drawn into the object.<br></td></tr
><tr
id=sl_svn7768_649
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_650
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_651
><td class="source"> * When creating your own PGraphics, you should call this before<br></td></tr
><tr
id=sl_svn7768_652
><td class="source"> * drawing anything.<br></td></tr
><tr
id=sl_svn7768_653
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_654
><td class="source"> * @webref<br></td></tr
><tr
id=sl_svn7768_655
><td class="source"> * @brief Sets up the rendering context<br></td></tr
><tr
id=sl_svn7768_656
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_657
><td class="source"> public void beginDraw() { // ignore<br></td></tr
><tr
id=sl_svn7768_658
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_659
><td class="source"><br></td></tr
><tr
id=sl_svn7768_660
><td class="source"><br></td></tr
><tr
id=sl_svn7768_661
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_662
><td class="source"> * Finalizes the rendering of a PGraphics object so that it can be shown on screen.<br></td></tr
><tr
id=sl_svn7768_663
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_664
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_665
><td class="source"> * When creating your own PGraphics, you should call this when<br></td></tr
><tr
id=sl_svn7768_666
><td class="source"> * you&#39;re finished drawing.<br></td></tr
><tr
id=sl_svn7768_667
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_668
><td class="source"> * @webref<br></td></tr
><tr
id=sl_svn7768_669
><td class="source"> * @brief Finalizes the renderering context<br></td></tr
><tr
id=sl_svn7768_670
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_671
><td class="source"> public void endDraw() { // ignore<br></td></tr
><tr
id=sl_svn7768_672
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_673
><td class="source"><br></td></tr
><tr
id=sl_svn7768_674
><td class="source"><br></td></tr
><tr
id=sl_svn7768_675
><td class="source"> public void flush() {<br></td></tr
><tr
id=sl_svn7768_676
><td class="source"> // no-op, mostly for P3D to write sorted stuff<br></td></tr
><tr
id=sl_svn7768_677
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_678
><td class="source"><br></td></tr
><tr
id=sl_svn7768_679
><td class="source"><br></td></tr
><tr
id=sl_svn7768_680
><td class="source"> protected void checkSettings() {<br></td></tr
><tr
id=sl_svn7768_681
><td class="source"> if (!settingsInited) defaultSettings();<br></td></tr
><tr
id=sl_svn7768_682
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_683
><td class="source"><br></td></tr
><tr
id=sl_svn7768_684
><td class="source"><br></td></tr
><tr
id=sl_svn7768_685
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_686
><td class="source"> * Set engine&#39;s default values. This has to be called by PApplet,<br></td></tr
><tr
id=sl_svn7768_687
><td class="source"> * somewhere inside setup() or draw() because it talks to the<br></td></tr
><tr
id=sl_svn7768_688
><td class="source"> * graphics buffer, meaning that for subclasses like OpenGL, there<br></td></tr
><tr
id=sl_svn7768_689
><td class="source"> * needs to be a valid graphics context to mess with otherwise<br></td></tr
><tr
id=sl_svn7768_690
><td class="source"> * you&#39;ll get some good crashing action.<br></td></tr
><tr
id=sl_svn7768_691
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_692
><td class="source"> * This is currently called by checkSettings(), during beginDraw().<br></td></tr
><tr
id=sl_svn7768_693
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_694
><td class="source"> protected void defaultSettings() { // ignore<br></td></tr
><tr
id=sl_svn7768_695
><td class="source">// System.out.println(&quot;PGraphics.defaultSettings() &quot; + width + &quot; &quot; + height);<br></td></tr
><tr
id=sl_svn7768_696
><td class="source"><br></td></tr
><tr
id=sl_svn7768_697
><td class="source"> noSmooth(); // 0149<br></td></tr
><tr
id=sl_svn7768_698
><td class="source"><br></td></tr
><tr
id=sl_svn7768_699
><td class="source"> colorMode(RGB, 255);<br></td></tr
><tr
id=sl_svn7768_700
><td class="source"> fill(255);<br></td></tr
><tr
id=sl_svn7768_701
><td class="source"> stroke(0);<br></td></tr
><tr
id=sl_svn7768_702
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_703
><td class="source"> // as of 0178, no longer relying on local versions of the variables<br></td></tr
><tr
id=sl_svn7768_704
><td class="source"> // being set, because subclasses may need to take extra action.<br></td></tr
><tr
id=sl_svn7768_705
><td class="source"> strokeWeight(DEFAULT_STROKE_WEIGHT);<br></td></tr
><tr
id=sl_svn7768_706
><td class="source"> strokeJoin(DEFAULT_STROKE_JOIN);<br></td></tr
><tr
id=sl_svn7768_707
><td class="source"> strokeCap(DEFAULT_STROKE_CAP);<br></td></tr
><tr
id=sl_svn7768_708
><td class="source"><br></td></tr
><tr
id=sl_svn7768_709
><td class="source"> // init shape stuff<br></td></tr
><tr
id=sl_svn7768_710
><td class="source"> shape = 0;<br></td></tr
><tr
id=sl_svn7768_711
><td class="source"><br></td></tr
><tr
id=sl_svn7768_712
><td class="source"> // init matrices (must do before lights)<br></td></tr
><tr
id=sl_svn7768_713
><td class="source"> //matrixStackDepth = 0;<br></td></tr
><tr
id=sl_svn7768_714
><td class="source"><br></td></tr
><tr
id=sl_svn7768_715
><td class="source"> rectMode(CORNER);<br></td></tr
><tr
id=sl_svn7768_716
><td class="source"> ellipseMode(DIAMETER);<br></td></tr
><tr
id=sl_svn7768_717
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_718
><td class="source"> autoNormal = true;<br></td></tr
><tr
id=sl_svn7768_719
><td class="source"><br></td></tr
><tr
id=sl_svn7768_720
><td class="source"> // no current font<br></td></tr
><tr
id=sl_svn7768_721
><td class="source"> textFont = null;<br></td></tr
><tr
id=sl_svn7768_722
><td class="source"> textSize = 12;<br></td></tr
><tr
id=sl_svn7768_723
><td class="source"> textLeading = 14;<br></td></tr
><tr
id=sl_svn7768_724
><td class="source"> textAlign = LEFT;<br></td></tr
><tr
id=sl_svn7768_725
><td class="source"> textMode = MODEL;<br></td></tr
><tr
id=sl_svn7768_726
><td class="source"><br></td></tr
><tr
id=sl_svn7768_727
><td class="source"> // if this fella is associated with an applet, then clear its background.<br></td></tr
><tr
id=sl_svn7768_728
><td class="source"> // if it&#39;s been created by someone else through createGraphics,<br></td></tr
><tr
id=sl_svn7768_729
><td class="source"> // they have to call background() themselves, otherwise everything gets<br></td></tr
><tr
id=sl_svn7768_730
><td class="source"> // a gray background (when just a transparent surface or an empty pdf<br></td></tr
><tr
id=sl_svn7768_731
><td class="source"> // is what&#39;s desired).<br></td></tr
><tr
id=sl_svn7768_732
><td class="source"> // this background() call is for the Java 2D and OpenGL renderers.<br></td></tr
><tr
id=sl_svn7768_733
><td class="source"> if (primarySurface) {<br></td></tr
><tr
id=sl_svn7768_734
><td class="source"> //System.out.println(&quot;main drawing surface bg &quot; + getClass().getName());<br></td></tr
><tr
id=sl_svn7768_735
><td class="source"> background(backgroundColor);<br></td></tr
><tr
id=sl_svn7768_736
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_737
><td class="source"><br></td></tr
><tr
id=sl_svn7768_738
><td class="source"> settingsInited = true;<br></td></tr
><tr
id=sl_svn7768_739
><td class="source"> // defaultSettings() overlaps reapplySettings(), don&#39;t do both<br></td></tr
><tr
id=sl_svn7768_740
><td class="source"> //reapplySettings = false;<br></td></tr
><tr
id=sl_svn7768_741
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_742
><td class="source"><br></td></tr
><tr
id=sl_svn7768_743
><td class="source"><br></td></tr
><tr
id=sl_svn7768_744
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_745
><td class="source"> * Re-apply current settings. Some methods, such as textFont(), require that<br></td></tr
><tr
id=sl_svn7768_746
><td class="source"> * their methods be called (rather than simply setting the textFont variable)<br></td></tr
><tr
id=sl_svn7768_747
><td class="source"> * because they affect the graphics context, or they require parameters from<br></td></tr
><tr
id=sl_svn7768_748
><td class="source"> * the context (e.g. getting native fonts for text).<br></td></tr
><tr
id=sl_svn7768_749
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_750
><td class="source"> * This will only be called from an allocate(), which is only called from<br></td></tr
><tr
id=sl_svn7768_751
><td class="source"> * size(), which is safely called from inside beginDraw(). And it cannot be<br></td></tr
><tr
id=sl_svn7768_752
><td class="source"> * called before defaultSettings(), so we should be safe.<br></td></tr
><tr
id=sl_svn7768_753
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_754
><td class="source"> protected void reapplySettings() {<br></td></tr
><tr
id=sl_svn7768_755
><td class="source">// System.out.println(&quot;attempting reapplySettings()&quot;);<br></td></tr
><tr
id=sl_svn7768_756
><td class="source"> if (!settingsInited) return; // if this is the initial setup, no need to reapply<br></td></tr
><tr
id=sl_svn7768_757
><td class="source"><br></td></tr
><tr
id=sl_svn7768_758
><td class="source">// System.out.println(&quot; doing reapplySettings&quot;);<br></td></tr
><tr
id=sl_svn7768_759
><td class="source">// new Exception().printStackTrace(System.out);<br></td></tr
><tr
id=sl_svn7768_760
><td class="source"><br></td></tr
><tr
id=sl_svn7768_761
><td class="source"> colorMode(colorMode, colorModeX, colorModeY, colorModeZ);<br></td></tr
><tr
id=sl_svn7768_762
><td class="source"> if (fill) {<br></td></tr
><tr
id=sl_svn7768_763
><td class="source">// PApplet.println(&quot; fill &quot; + PApplet.hex(fillColor));<br></td></tr
><tr
id=sl_svn7768_764
><td class="source"> fill(fillColor);<br></td></tr
><tr
id=sl_svn7768_765
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_766
><td class="source"> noFill();<br></td></tr
><tr
id=sl_svn7768_767
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_768
><td class="source"> if (stroke) {<br></td></tr
><tr
id=sl_svn7768_769
><td class="source"> stroke(strokeColor);<br></td></tr
><tr
id=sl_svn7768_770
><td class="source"><br></td></tr
><tr
id=sl_svn7768_771
><td class="source"> // The if() statements should be handled inside the functions,<br></td></tr
><tr
id=sl_svn7768_772
><td class="source"> // otherwise an actual reset/revert won&#39;t work properly.<br></td></tr
><tr
id=sl_svn7768_773
><td class="source"> //if (strokeWeight != DEFAULT_STROKE_WEIGHT) {<br></td></tr
><tr
id=sl_svn7768_774
><td class="source"> strokeWeight(strokeWeight);<br></td></tr
><tr
id=sl_svn7768_775
><td class="source"> //}<br></td></tr
><tr
id=sl_svn7768_776
><td class="source">// if (strokeCap != DEFAULT_STROKE_CAP) {<br></td></tr
><tr
id=sl_svn7768_777
><td class="source"> strokeCap(strokeCap);<br></td></tr
><tr
id=sl_svn7768_778
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_779
><td class="source">// if (strokeJoin != DEFAULT_STROKE_JOIN) {<br></td></tr
><tr
id=sl_svn7768_780
><td class="source"> strokeJoin(strokeJoin);<br></td></tr
><tr
id=sl_svn7768_781
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_782
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_783
><td class="source"> noStroke();<br></td></tr
><tr
id=sl_svn7768_784
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_785
><td class="source"> if (tint) {<br></td></tr
><tr
id=sl_svn7768_786
><td class="source"> tint(tintColor);<br></td></tr
><tr
id=sl_svn7768_787
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_788
><td class="source"> noTint();<br></td></tr
><tr
id=sl_svn7768_789
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_790
><td class="source"> if (smooth) {<br></td></tr
><tr
id=sl_svn7768_791
><td class="source"> smooth();<br></td></tr
><tr
id=sl_svn7768_792
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_793
><td class="source"> // Don&#39;t bother setting this, cuz it&#39;ll anger P3D.<br></td></tr
><tr
id=sl_svn7768_794
><td class="source"> noSmooth();<br></td></tr
><tr
id=sl_svn7768_795
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_796
><td class="source"> if (textFont != null) {<br></td></tr
><tr
id=sl_svn7768_797
><td class="source">// System.out.println(&quot; textFont in reapply is &quot; + textFont);<br></td></tr
><tr
id=sl_svn7768_798
><td class="source"> // textFont() resets the leading, so save it in case it&#39;s changed<br></td></tr
><tr
id=sl_svn7768_799
><td class="source"> float saveLeading = textLeading;<br></td></tr
><tr
id=sl_svn7768_800
><td class="source"> textFont(textFont, textSize);<br></td></tr
><tr
id=sl_svn7768_801
><td class="source"> textLeading(saveLeading);<br></td></tr
><tr
id=sl_svn7768_802
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_803
><td class="source"> textMode(textMode);<br></td></tr
><tr
id=sl_svn7768_804
><td class="source"> textAlign(textAlign, textAlignY);<br></td></tr
><tr
id=sl_svn7768_805
><td class="source"> background(backgroundColor);<br></td></tr
><tr
id=sl_svn7768_806
><td class="source"><br></td></tr
><tr
id=sl_svn7768_807
><td class="source"> //reapplySettings = false;<br></td></tr
><tr
id=sl_svn7768_808
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_809
><td class="source"><br></td></tr
><tr
id=sl_svn7768_810
><td class="source"> // inherit from PImage<br></td></tr
><tr
id=sl_svn7768_811
><td class="source"> //public void resize(int wide, int high){ } <br></td></tr
><tr
id=sl_svn7768_812
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_813
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_814
><td class="source"><br></td></tr
><tr
id=sl_svn7768_815
><td class="source"> // HINTS<br></td></tr
><tr
id=sl_svn7768_816
><td class="source"><br></td></tr
><tr
id=sl_svn7768_817
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_818
><td class="source"> * Set various hints and hacks for the renderer. This is used to handle obscure rendering features that cannot be implemented in a consistent manner across renderers. Many options will often graduate to standard features instead of hints over time.<br></td></tr
><tr
id=sl_svn7768_819
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(ENABLE_OPENGL_4X_SMOOTH) - Enable 4x anti-aliasing for OpenGL. This can help force anti-aliasing if it has not been enabled by the user. On some graphics cards, this can also be set by the graphics driver&#39;s control panel, however not all cards make this available. This hint must be called immediately after the size() command because it resets the renderer, obliterating any settings and anything drawn (and like size(), re-running the code that came before it again).<br></td></tr
><tr
id=sl_svn7768_820
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(DISABLE_OPENGL_2X_SMOOTH) - In Processing 1.0, Processing always enables 2x smoothing when the OpenGL renderer is used. This hint disables the default 2x smoothing and returns the smoothing behavior found in earlier releases, where smooth() and noSmooth() could be used to enable and disable smoothing, though the quality was inferior.<br></td></tr
><tr
id=sl_svn7768_821
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(ENABLE_NATIVE_FONTS) - Use the native version fonts when they are installed, rather than the bitmapped version from a .vlw file. This is useful with the JAVA2D renderer setting, as it will improve font rendering speed. This is not enabled by default, because it can be misleading while testing because the type will look great on your machine (because you have the font installed) but lousy on others&#39; machines if the identical font is unavailable. This option can only be set per-sketch, and must be called before any use of textFont().<br></td></tr
><tr
id=sl_svn7768_822
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(DISABLE_DEPTH_TEST) - Disable the zbuffer, allowing you to draw on top of everything at will. When depth testing is disabled, items will be drawn to the screen sequentially, like a painting. This hint is most often used to draw in 3D, then draw in 2D on top of it (for instance, to draw GUI controls in 2D on top of a 3D interface). Starting in release 0149, this will also clear the depth buffer. Restore the default with hint(ENABLE_DEPTH_TEST), but note that with the depth buffer cleared, any 3D drawing that happens later in draw() will ignore existing shapes on the screen.<br></td></tr
><tr
id=sl_svn7768_823
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(ENABLE_DEPTH_SORT) - Enable primitive z-sorting of triangles and lines in P3D and OPENGL. This can slow performance considerably, and the algorithm is not yet perfect. Restore the default with hint(DISABLE_DEPTH_SORT).<br></td></tr
><tr
id=sl_svn7768_824
><td class="source"> * &lt;br&gt;&lt;br&gt;hint(DISABLE_OPENGL_ERROR_REPORT) - Speeds up the OPENGL renderer setting by not checking for errors while running. Undo with hint(ENABLE_OPENGL_ERROR_REPORT).<br></td></tr
><tr
id=sl_svn7768_825
><td class="source"> * &lt;br&gt;&lt;br&gt;&lt;!--hint(ENABLE_ACCURATE_TEXTURES) - Enables better texture accuracy for the P3D renderer. This option will do a better job of dealing with textures in perspective. hint(DISABLE_ACCURATE_TEXTURES) returns to the default. This hint is not likely to last long.<br></td></tr
><tr
id=sl_svn7768_826
><td class="source"> * &lt;br/&gt; &lt;br/&gt;--&gt;As of release 0149, unhint() has been removed in favor of adding additional ENABLE/DISABLE constants to reset the default behavior. This prevents the double negatives, and also reinforces which hints can be enabled or disabled.<br></td></tr
><tr
id=sl_svn7768_827
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_828
><td class="source"> * @webref rendering<br></td></tr
><tr
id=sl_svn7768_829
><td class="source"> * @param which name of the hint to be enabled or disabled<br></td></tr
><tr
id=sl_svn7768_830
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_831
><td class="source"> * @see processing.core.PGraphics<br></td></tr
><tr
id=sl_svn7768_832
><td class="source"> * @see processing.core.PApplet#createGraphics(int, int, String, String)<br></td></tr
><tr
id=sl_svn7768_833
><td class="source"> * @see processing.core.PApplet#size(int, int)<br></td></tr
><tr
id=sl_svn7768_834
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_835
><td class="source"> public void hint(int which) {<br></td></tr
><tr
id=sl_svn7768_836
><td class="source"> if (which &gt; 0) {<br></td></tr
><tr
id=sl_svn7768_837
><td class="source"> hints[which] = true;<br></td></tr
><tr
id=sl_svn7768_838
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_839
><td class="source"> hints[-which] = false;<br></td></tr
><tr
id=sl_svn7768_840
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_841
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_842
><td class="source"><br></td></tr
><tr
id=sl_svn7768_843
><td class="source"> public boolean hintEnabled(int which) {<br></td></tr
><tr
id=sl_svn7768_844
><td class="source"> if (which &gt; 0) {<br></td></tr
><tr
id=sl_svn7768_845
><td class="source"> return hints[which];<br></td></tr
><tr
id=sl_svn7768_846
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_847
><td class="source"> return hints[-which];<br></td></tr
><tr
id=sl_svn7768_848
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_849
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_850
><td class="source"><br></td></tr
><tr
id=sl_svn7768_851
><td class="source"><br></td></tr
><tr
id=sl_svn7768_852
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_853
><td class="source"><br></td></tr
><tr
id=sl_svn7768_854
><td class="source"> // VERTEX SHAPES<br></td></tr
><tr
id=sl_svn7768_855
><td class="source"><br></td></tr
><tr
id=sl_svn7768_856
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_857
><td class="source"> * Start a new shape of type POLYGON<br></td></tr
><tr
id=sl_svn7768_858
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_859
><td class="source"> public void beginShape() {<br></td></tr
><tr
id=sl_svn7768_860
><td class="source"> beginShape(POLYGON);<br></td></tr
><tr
id=sl_svn7768_861
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_862
><td class="source"><br></td></tr
><tr
id=sl_svn7768_863
><td class="source"><br></td></tr
><tr
id=sl_svn7768_864
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_865
><td class="source"> * Start a new shape.<br></td></tr
><tr
id=sl_svn7768_866
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_867
><td class="source"> * &lt;B&gt;Differences between beginShape() and line() and point() methods.&lt;/B&gt;<br></td></tr
><tr
id=sl_svn7768_868
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_869
><td class="source"> * beginShape() is intended to be more flexible at the expense of being<br></td></tr
><tr
id=sl_svn7768_870
><td class="source"> * a little more complicated to use. it handles more complicated shapes<br></td></tr
><tr
id=sl_svn7768_871
><td class="source"> * that can consist of many connected lines (so you get joins) or lines<br></td></tr
><tr
id=sl_svn7768_872
><td class="source"> * mixed with curves.<br></td></tr
><tr
id=sl_svn7768_873
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_874
><td class="source"> * The line() and point() command are for the far more common cases<br></td></tr
><tr
id=sl_svn7768_875
><td class="source"> * (particularly for our audience) that simply need to draw a line<br></td></tr
><tr
id=sl_svn7768_876
><td class="source"> * or a point on the screen.<br></td></tr
><tr
id=sl_svn7768_877
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_878
><td class="source"> * From the code side of things, line() may or may not call beginShape()<br></td></tr
><tr
id=sl_svn7768_879
><td class="source"> * to do the drawing. In the beta code, they do, but in the alpha code,<br></td></tr
><tr
id=sl_svn7768_880
><td class="source"> * they did not. they might be implemented one way or the other depending<br></td></tr
><tr
id=sl_svn7768_881
><td class="source"> * on tradeoffs of runtime efficiency vs. implementation efficiency &amp;mdash<br></td></tr
><tr
id=sl_svn7768_882
><td class="source"> * meaning the speed that things run at vs. the speed it takes me to write<br></td></tr
><tr
id=sl_svn7768_883
><td class="source"> * the code and maintain it. for beta, the latter is most important so<br></td></tr
><tr
id=sl_svn7768_884
><td class="source"> * that&#39;s how things are implemented.<br></td></tr
><tr
id=sl_svn7768_885
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_886
><td class="source"> public void beginShape(int kind) {<br></td></tr
><tr
id=sl_svn7768_887
><td class="source"> shape = kind;<br></td></tr
><tr
id=sl_svn7768_888
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_889
><td class="source"><br></td></tr
><tr
id=sl_svn7768_890
><td class="source"><br></td></tr
><tr
id=sl_svn7768_891
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_892
><td class="source"> * Sets whether the upcoming vertex is part of an edge.<br></td></tr
><tr
id=sl_svn7768_893
><td class="source"> * Equivalent to glEdgeFlag(), for people familiar with OpenGL.<br></td></tr
><tr
id=sl_svn7768_894
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_895
><td class="source"> public void edge(boolean edge) {<br></td></tr
><tr
id=sl_svn7768_896
><td class="source"> this.edge = edge;<br></td></tr
><tr
id=sl_svn7768_897
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_898
><td class="source"><br></td></tr
><tr
id=sl_svn7768_899
><td class="source"><br></td></tr
><tr
id=sl_svn7768_900
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_901
><td class="source"> * Sets the current normal vector. Only applies with 3D rendering<br></td></tr
><tr
id=sl_svn7768_902
><td class="source"> * and inside a beginShape/endShape block.<br></td></tr
><tr
id=sl_svn7768_903
><td class="source"> * &lt;P/&gt;<br></td></tr
><tr
id=sl_svn7768_904
><td class="source"> * This is for drawing three dimensional shapes and surfaces,<br></td></tr
><tr
id=sl_svn7768_905
><td class="source"> * allowing you to specify a vector perpendicular to the surface<br></td></tr
><tr
id=sl_svn7768_906
><td class="source"> * of the shape, which determines how lighting affects it.<br></td></tr
><tr
id=sl_svn7768_907
><td class="source"> * &lt;P/&gt;<br></td></tr
><tr
id=sl_svn7768_908
><td class="source"> * For the most part, PGraphics3D will attempt to automatically<br></td></tr
><tr
id=sl_svn7768_909
><td class="source"> * assign normals to shapes, but since that&#39;s imperfect,<br></td></tr
><tr
id=sl_svn7768_910
><td class="source"> * this is a better option when you want more control.<br></td></tr
><tr
id=sl_svn7768_911
><td class="source"> * &lt;P/&gt;<br></td></tr
><tr
id=sl_svn7768_912
><td class="source"> * For people familiar with OpenGL, this function is basically<br></td></tr
><tr
id=sl_svn7768_913
><td class="source"> * identical to glNormal3f().<br></td></tr
><tr
id=sl_svn7768_914
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_915
><td class="source"> public void normal(float nx, float ny, float nz) {<br></td></tr
><tr
id=sl_svn7768_916
><td class="source"> normalX = nx;<br></td></tr
><tr
id=sl_svn7768_917
><td class="source"> normalY = ny;<br></td></tr
><tr
id=sl_svn7768_918
><td class="source"> normalZ = nz;<br></td></tr
><tr
id=sl_svn7768_919
><td class="source"><br></td></tr
><tr
id=sl_svn7768_920
><td class="source"> // if drawing a shape and the normal hasn&#39;t been set yet,<br></td></tr
><tr
id=sl_svn7768_921
><td class="source"> // then we need to set the normals for each vertex so far<br></td></tr
><tr
id=sl_svn7768_922
><td class="source"> if (shape != 0) {<br></td></tr
><tr
id=sl_svn7768_923
><td class="source"> if (normalMode == NORMAL_MODE_AUTO) {<br></td></tr
><tr
id=sl_svn7768_924
><td class="source"> // either they set the normals, or they don&#39;t [0149]<br></td></tr
><tr
id=sl_svn7768_925
><td class="source">// for (int i = vertex_start; i &lt; vertexCount; i++) {<br></td></tr
><tr
id=sl_svn7768_926
><td class="source">// vertices[i][NX] = normalX;<br></td></tr
><tr
id=sl_svn7768_927
><td class="source">// vertices[i][NY] = normalY;<br></td></tr
><tr
id=sl_svn7768_928
><td class="source">// vertices[i][NZ] = normalZ;<br></td></tr
><tr
id=sl_svn7768_929
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_930
><td class="source"> // One normal per begin/end shape<br></td></tr
><tr
id=sl_svn7768_931
><td class="source"> normalMode = NORMAL_MODE_SHAPE;<br></td></tr
><tr
id=sl_svn7768_932
><td class="source"><br></td></tr
><tr
id=sl_svn7768_933
><td class="source"> } else if (normalMode == NORMAL_MODE_SHAPE) {<br></td></tr
><tr
id=sl_svn7768_934
><td class="source"> // a separate normal for each vertex<br></td></tr
><tr
id=sl_svn7768_935
><td class="source"> normalMode = NORMAL_MODE_VERTEX;<br></td></tr
><tr
id=sl_svn7768_936
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_937
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_938
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_939
><td class="source"><br></td></tr
><tr
id=sl_svn7768_940
><td class="source"><br></td></tr
><tr
id=sl_svn7768_941
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_942
><td class="source"> * Set texture mode to either to use coordinates based on the IMAGE<br></td></tr
><tr
id=sl_svn7768_943
><td class="source"> * (more intuitive for new users) or NORMALIZED (better for advanced chaps)<br></td></tr
><tr
id=sl_svn7768_944
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_945
><td class="source"> public void textureMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_946
><td class="source"> this.textureMode = mode;<br></td></tr
><tr
id=sl_svn7768_947
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_948
><td class="source"><br></td></tr
><tr
id=sl_svn7768_949
><td class="source"><br></td></tr
><tr
id=sl_svn7768_950
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_951
><td class="source"> * Set texture image for current shape.<br></td></tr
><tr
id=sl_svn7768_952
><td class="source"> * Needs to be called between @see beginShape and @see endShape<br></td></tr
><tr
id=sl_svn7768_953
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_954
><td class="source"> * @param image reference to a PImage object<br></td></tr
><tr
id=sl_svn7768_955
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_956
><td class="source"> public void texture(PImage image) {<br></td></tr
><tr
id=sl_svn7768_957
><td class="source"> textureImage = image;<br></td></tr
><tr
id=sl_svn7768_958
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_959
><td class="source"><br></td></tr
><tr
id=sl_svn7768_960
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_961
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_962
><td class="source"> * Removes texture image for current shape.<br></td></tr
><tr
id=sl_svn7768_963
><td class="source"> * Needs to be called between @see beginShape and @see endShape<br></td></tr
><tr
id=sl_svn7768_964
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_965
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_966
><td class="source"> public void noTexture() {<br></td></tr
><tr
id=sl_svn7768_967
><td class="source"> textureImage = null;<br></td></tr
><tr
id=sl_svn7768_968
><td class="source"> } <br></td></tr
><tr
id=sl_svn7768_969
><td class="source"><br></td></tr
><tr
id=sl_svn7768_970
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_971
><td class="source"> protected void vertexCheck() {<br></td></tr
><tr
id=sl_svn7768_972
><td class="source"> if (vertexCount == vertices.length) {<br></td></tr
><tr
id=sl_svn7768_973
><td class="source"> float temp[][] = new float[vertexCount &lt;&lt; 1][VERTEX_FIELD_COUNT];<br></td></tr
><tr
id=sl_svn7768_974
><td class="source"> System.arraycopy(vertices, 0, temp, 0, vertexCount);<br></td></tr
><tr
id=sl_svn7768_975
><td class="source"> vertices = temp;<br></td></tr
><tr
id=sl_svn7768_976
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_977
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_978
><td class="source"><br></td></tr
><tr
id=sl_svn7768_979
><td class="source"><br></td></tr
><tr
id=sl_svn7768_980
><td class="source"> public void vertex(float x, float y) {<br></td></tr
><tr
id=sl_svn7768_981
><td class="source"> vertexCheck();<br></td></tr
><tr
id=sl_svn7768_982
><td class="source"> float[] vertex = vertices[vertexCount];<br></td></tr
><tr
id=sl_svn7768_983
><td class="source"><br></td></tr
><tr
id=sl_svn7768_984
><td class="source"> curveVertexCount = 0;<br></td></tr
><tr
id=sl_svn7768_985
><td class="source"><br></td></tr
><tr
id=sl_svn7768_986
><td class="source"> vertex[X] = x;<br></td></tr
><tr
id=sl_svn7768_987
><td class="source"> vertex[Y] = y;<br></td></tr
><tr
id=sl_svn7768_988
><td class="source"><br></td></tr
><tr
id=sl_svn7768_989
><td class="source"> vertex[EDGE] = edge ? 1 : 0;<br></td></tr
><tr
id=sl_svn7768_990
><td class="source"><br></td></tr
><tr
id=sl_svn7768_991
><td class="source">// if (fill) {<br></td></tr
><tr
id=sl_svn7768_992
><td class="source">// vertex[R] = fillR;<br></td></tr
><tr
id=sl_svn7768_993
><td class="source">// vertex[G] = fillG;<br></td></tr
><tr
id=sl_svn7768_994
><td class="source">// vertex[B] = fillB;<br></td></tr
><tr
id=sl_svn7768_995
><td class="source">// vertex[A] = fillA;<br></td></tr
><tr
id=sl_svn7768_996
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_997
><td class="source"> boolean textured = textureImage != null;<br></td></tr
><tr
id=sl_svn7768_998
><td class="source"> if (fill || textured) {<br></td></tr
><tr
id=sl_svn7768_999
><td class="source"> if (textureImage == null) {<br></td></tr
><tr
id=sl_svn7768_1000
><td class="source"> vertex[R] = fillR;<br></td></tr
><tr
id=sl_svn7768_1001
><td class="source"> vertex[G] = fillG;<br></td></tr
><tr
id=sl_svn7768_1002
><td class="source"> vertex[B] = fillB;<br></td></tr
><tr
id=sl_svn7768_1003
><td class="source"> vertex[A] = fillA;<br></td></tr
><tr
id=sl_svn7768_1004
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1005
><td class="source"> if (tint) {<br></td></tr
><tr
id=sl_svn7768_1006
><td class="source"> vertex[R] = tintR;<br></td></tr
><tr
id=sl_svn7768_1007
><td class="source"> vertex[G] = tintG;<br></td></tr
><tr
id=sl_svn7768_1008
><td class="source"> vertex[B] = tintB;<br></td></tr
><tr
id=sl_svn7768_1009
><td class="source"> vertex[A] = tintA;<br></td></tr
><tr
id=sl_svn7768_1010
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1011
><td class="source"> vertex[R] = 1;<br></td></tr
><tr
id=sl_svn7768_1012
><td class="source"> vertex[G] = 1;<br></td></tr
><tr
id=sl_svn7768_1013
><td class="source"> vertex[B] = 1;<br></td></tr
><tr
id=sl_svn7768_1014
><td class="source"> vertex[A] = 1;<br></td></tr
><tr
id=sl_svn7768_1015
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1016
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1017
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1018
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1019
><td class="source"> if (stroke) {<br></td></tr
><tr
id=sl_svn7768_1020
><td class="source"> vertex[SR] = strokeR;<br></td></tr
><tr
id=sl_svn7768_1021
><td class="source"> vertex[SG] = strokeG;<br></td></tr
><tr
id=sl_svn7768_1022
><td class="source"> vertex[SB] = strokeB;<br></td></tr
><tr
id=sl_svn7768_1023
><td class="source"> vertex[SA] = strokeA;<br></td></tr
><tr
id=sl_svn7768_1024
><td class="source"> vertex[SW] = strokeWeight;<br></td></tr
><tr
id=sl_svn7768_1025
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1026
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1027
><td class="source"> if (textured) {<br></td></tr
><tr
id=sl_svn7768_1028
><td class="source"> vertex[U] = textureU;<br></td></tr
><tr
id=sl_svn7768_1029
><td class="source"> vertex[V] = textureV;<br></td></tr
><tr
id=sl_svn7768_1030
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1031
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1032
><td class="source"> if (autoNormal) {<br></td></tr
><tr
id=sl_svn7768_1033
><td class="source"> float norm2 = normalX * normalX + normalY * normalY + normalZ * normalZ;<br></td></tr
><tr
id=sl_svn7768_1034
><td class="source"> if (norm2 &lt; EPSILON) {<br></td></tr
><tr
id=sl_svn7768_1035
><td class="source"> vertex[HAS_NORMAL] = 0; <br></td></tr
><tr
id=sl_svn7768_1036
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1037
><td class="source"> if (Math.abs(norm2 - 1) &gt; EPSILON) {<br></td></tr
><tr
id=sl_svn7768_1038
><td class="source"> // The normal vector is not normalized.<br></td></tr
><tr
id=sl_svn7768_1039
><td class="source"> float norm = PApplet.sqrt(norm2);<br></td></tr
><tr
id=sl_svn7768_1040
><td class="source"> normalX /= norm;<br></td></tr
><tr
id=sl_svn7768_1041
><td class="source"> normalY /= norm;<br></td></tr
><tr
id=sl_svn7768_1042
><td class="source"> normalZ /= norm;<br></td></tr
><tr
id=sl_svn7768_1043
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1044
><td class="source"> vertex[HAS_NORMAL] = 1;<br></td></tr
><tr
id=sl_svn7768_1045
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1046
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1047
><td class="source"> vertex[HAS_NORMAL] = 1; <br></td></tr
><tr
id=sl_svn7768_1048
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1049
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1050
><td class="source"> vertexCount++;<br></td></tr
><tr
id=sl_svn7768_1051
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1052
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1053
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1054
><td class="source"> public void vertex(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_1055
><td class="source"> vertexCheck();<br></td></tr
><tr
id=sl_svn7768_1056
><td class="source"> float[] vertex = vertices[vertexCount];<br></td></tr
><tr
id=sl_svn7768_1057
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1058
><td class="source"> // only do this if we&#39;re using an irregular (POLYGON) shape that<br></td></tr
><tr
id=sl_svn7768_1059
><td class="source"> // will go through the triangulator. otherwise it&#39;ll do thinks like<br></td></tr
><tr
id=sl_svn7768_1060
><td class="source"> // disappear in mathematically odd ways<br></td></tr
><tr
id=sl_svn7768_1061
><td class="source"> // http://dev.processing.org/bugs/show_bug.cgi?id=444<br></td></tr
><tr
id=sl_svn7768_1062
><td class="source"> if (shape == POLYGON) {<br></td></tr
><tr
id=sl_svn7768_1063
><td class="source"> if (vertexCount &gt; 0) {<br></td></tr
><tr
id=sl_svn7768_1064
><td class="source"> float pvertex[] = vertices[vertexCount-1];<br></td></tr
><tr
id=sl_svn7768_1065
><td class="source"> if ((Math.abs(pvertex[X] - x) &lt; EPSILON) &amp;&amp;<br></td></tr
><tr
id=sl_svn7768_1066
><td class="source"> (Math.abs(pvertex[Y] - y) &lt; EPSILON) &amp;&amp;<br></td></tr
><tr
id=sl_svn7768_1067
><td class="source"> (Math.abs(pvertex[Z] - z) &lt; EPSILON)) {<br></td></tr
><tr
id=sl_svn7768_1068
><td class="source"> // this vertex is identical, don&#39;t add it,<br></td></tr
><tr
id=sl_svn7768_1069
><td class="source"> // because it will anger the triangulator<br></td></tr
><tr
id=sl_svn7768_1070
><td class="source"> return;<br></td></tr
><tr
id=sl_svn7768_1071
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1072
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1073
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1074
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1075
><td class="source"> // User called vertex(), so that invalidates anything queued up for curve<br></td></tr
><tr
id=sl_svn7768_1076
><td class="source"> // vertices. If this is internally called by curveVertexSegment,<br></td></tr
><tr
id=sl_svn7768_1077
><td class="source"> // then curveVertexCount will be saved and restored.<br></td></tr
><tr
id=sl_svn7768_1078
><td class="source"> curveVertexCount = 0;<br></td></tr
><tr
id=sl_svn7768_1079
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1080
><td class="source"> vertex[X] = x;<br></td></tr
><tr
id=sl_svn7768_1081
><td class="source"> vertex[Y] = y;<br></td></tr
><tr
id=sl_svn7768_1082
><td class="source"> vertex[Z] = z;<br></td></tr
><tr
id=sl_svn7768_1083
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1084
><td class="source"> vertex[EDGE] = edge ? 1 : 0;<br></td></tr
><tr
id=sl_svn7768_1085
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1086
><td class="source"> boolean textured = textureImage != null; <br></td></tr
><tr
id=sl_svn7768_1087
><td class="source"> if (fill || textured) {<br></td></tr
><tr
id=sl_svn7768_1088
><td class="source"> if (textureImage == null) {<br></td></tr
><tr
id=sl_svn7768_1089
><td class="source"> vertex[R] = fillR;<br></td></tr
><tr
id=sl_svn7768_1090
><td class="source"> vertex[G] = fillG;<br></td></tr
><tr
id=sl_svn7768_1091
><td class="source"> vertex[B] = fillB;<br></td></tr
><tr
id=sl_svn7768_1092
><td class="source"> vertex[A] = fillA;<br></td></tr
><tr
id=sl_svn7768_1093
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1094
><td class="source"> if (tint) {<br></td></tr
><tr
id=sl_svn7768_1095
><td class="source"> vertex[R] = tintR;<br></td></tr
><tr
id=sl_svn7768_1096
><td class="source"> vertex[G] = tintG;<br></td></tr
><tr
id=sl_svn7768_1097
><td class="source"> vertex[B] = tintB;<br></td></tr
><tr
id=sl_svn7768_1098
><td class="source"> vertex[A] = tintA;<br></td></tr
><tr
id=sl_svn7768_1099
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1100
><td class="source"> vertex[R] = 1;<br></td></tr
><tr
id=sl_svn7768_1101
><td class="source"> vertex[G] = 1;<br></td></tr
><tr
id=sl_svn7768_1102
><td class="source"> vertex[B] = 1;<br></td></tr
><tr
id=sl_svn7768_1103
><td class="source"> vertex[A] = 1;<br></td></tr
><tr
id=sl_svn7768_1104
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1105
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1106
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1107
><td class="source"> vertex[AR] = ambientR;<br></td></tr
><tr
id=sl_svn7768_1108
><td class="source"> vertex[AG] = ambientG;<br></td></tr
><tr
id=sl_svn7768_1109
><td class="source"> vertex[AB] = ambientB;<br></td></tr
><tr
id=sl_svn7768_1110
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1111
><td class="source"> vertex[SPR] = specularR;<br></td></tr
><tr
id=sl_svn7768_1112
><td class="source"> vertex[SPG] = specularG;<br></td></tr
><tr
id=sl_svn7768_1113
><td class="source"> vertex[SPB] = specularB;<br></td></tr
><tr
id=sl_svn7768_1114
><td class="source"> //vertex[SPA] = specularA;<br></td></tr
><tr
id=sl_svn7768_1115
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1116
><td class="source"> vertex[SHINE] = shininess;<br></td></tr
><tr
id=sl_svn7768_1117
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1118
><td class="source"> vertex[ER] = emissiveR;<br></td></tr
><tr
id=sl_svn7768_1119
><td class="source"> vertex[EG] = emissiveG;<br></td></tr
><tr
id=sl_svn7768_1120
><td class="source"> vertex[EB] = emissiveB;<br></td></tr
><tr
id=sl_svn7768_1121
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1122
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1123
><td class="source"> if (stroke) {<br></td></tr
><tr
id=sl_svn7768_1124
><td class="source"> vertex[SR] = strokeR;<br></td></tr
><tr
id=sl_svn7768_1125
><td class="source"> vertex[SG] = strokeG;<br></td></tr
><tr
id=sl_svn7768_1126
><td class="source"> vertex[SB] = strokeB;<br></td></tr
><tr
id=sl_svn7768_1127
><td class="source"> vertex[SA] = strokeA;<br></td></tr
><tr
id=sl_svn7768_1128
><td class="source"> vertex[SW] = strokeWeight;<br></td></tr
><tr
id=sl_svn7768_1129
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1130
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1131
><td class="source"> if (textured) {<br></td></tr
><tr
id=sl_svn7768_1132
><td class="source"> vertex[U] = textureU;<br></td></tr
><tr
id=sl_svn7768_1133
><td class="source"> vertex[V] = textureV;<br></td></tr
><tr
id=sl_svn7768_1134
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1135
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1136
><td class="source"> if (autoNormal) {<br></td></tr
><tr
id=sl_svn7768_1137
><td class="source"> float norm2 = normalX * normalX + normalY * normalY + normalZ * normalZ;<br></td></tr
><tr
id=sl_svn7768_1138
><td class="source"> if (norm2 &lt; EPSILON) {<br></td></tr
><tr
id=sl_svn7768_1139
><td class="source"> vertex[HAS_NORMAL] = 0; <br></td></tr
><tr
id=sl_svn7768_1140
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1141
><td class="source"> if (Math.abs(norm2 - 1) &gt; EPSILON) {<br></td></tr
><tr
id=sl_svn7768_1142
><td class="source"> // The normal vector is not normalized.<br></td></tr
><tr
id=sl_svn7768_1143
><td class="source"> float norm = PApplet.sqrt(norm2);<br></td></tr
><tr
id=sl_svn7768_1144
><td class="source"> normalX /= norm;<br></td></tr
><tr
id=sl_svn7768_1145
><td class="source"> normalY /= norm;<br></td></tr
><tr
id=sl_svn7768_1146
><td class="source"> normalZ /= norm;<br></td></tr
><tr
id=sl_svn7768_1147
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1148
><td class="source"> vertex[HAS_NORMAL] = 1;<br></td></tr
><tr
id=sl_svn7768_1149
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1150
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1151
><td class="source"> vertex[HAS_NORMAL] = 1;<br></td></tr
><tr
id=sl_svn7768_1152
><td class="source"> } <br></td></tr
><tr
id=sl_svn7768_1153
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1154
><td class="source"> vertex[NX] = normalX;<br></td></tr
><tr
id=sl_svn7768_1155
><td class="source"> vertex[NY] = normalY;<br></td></tr
><tr
id=sl_svn7768_1156
><td class="source"> vertex[NZ] = normalZ;<br></td></tr
><tr
id=sl_svn7768_1157
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1158
><td class="source"> vertex[BEEN_LIT] = 0;<br></td></tr
><tr
id=sl_svn7768_1159
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1160
><td class="source"> vertexCount++;<br></td></tr
><tr
id=sl_svn7768_1161
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1162
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1163
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1164
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1165
><td class="source"> * Used by renderer subclasses or PShape to efficiently pass in already<br></td></tr
><tr
id=sl_svn7768_1166
><td class="source"> * formatted vertex information.<br></td></tr
><tr
id=sl_svn7768_1167
><td class="source"> * @param v vertex parameters, as a float array of length VERTEX_FIELD_COUNT<br></td></tr
><tr
id=sl_svn7768_1168
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1169
><td class="source"> public void vertex(float[] v) {<br></td></tr
><tr
id=sl_svn7768_1170
><td class="source"> vertexCheck();<br></td></tr
><tr
id=sl_svn7768_1171
><td class="source"> curveVertexCount = 0;<br></td></tr
><tr
id=sl_svn7768_1172
><td class="source"> float[] vertex = vertices[vertexCount];<br></td></tr
><tr
id=sl_svn7768_1173
><td class="source"> System.arraycopy(v, 0, vertex, 0, VERTEX_FIELD_COUNT);<br></td></tr
><tr
id=sl_svn7768_1174
><td class="source"> vertexCount++;<br></td></tr
><tr
id=sl_svn7768_1175
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1176
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1177
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1178
><td class="source"> public void vertex(float x, float y, float u, float v) {<br></td></tr
><tr
id=sl_svn7768_1179
><td class="source"> vertexTexture(u, v);<br></td></tr
><tr
id=sl_svn7768_1180
><td class="source"> vertex(x, y);<br></td></tr
><tr
id=sl_svn7768_1181
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1182
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1183
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1184
><td class="source"> public void vertex(float x, float y, float z, float u, float v) {<br></td></tr
><tr
id=sl_svn7768_1185
><td class="source"> vertexTexture(u, v);<br></td></tr
><tr
id=sl_svn7768_1186
><td class="source"> vertex(x, y, z);<br></td></tr
><tr
id=sl_svn7768_1187
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1188
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1189
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1190
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1191
><td class="source"> * Internal method to copy all style information for the given vertex.<br></td></tr
><tr
id=sl_svn7768_1192
><td class="source"> * Can be overridden by subclasses to handle only properties pertinent to<br></td></tr
><tr
id=sl_svn7768_1193
><td class="source"> * that renderer. (e.g. no need to copy the emissive color in P2D)<br></td></tr
><tr
id=sl_svn7768_1194
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1195
><td class="source">// protected void vertexStyle() {<br></td></tr
><tr
id=sl_svn7768_1196
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_1197
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1198
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1199
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1200
><td class="source"> * Set (U, V) coords for the next vertex in the current shape.<br></td></tr
><tr
id=sl_svn7768_1201
><td class="source"> * This is ugly as its own function, and will (almost?) always be<br></td></tr
><tr
id=sl_svn7768_1202
><td class="source"> * coincident with a call to vertex. As of beta, this was moved to<br></td></tr
><tr
id=sl_svn7768_1203
><td class="source"> * the protected method you see here, and called from an optional<br></td></tr
><tr
id=sl_svn7768_1204
><td class="source"> * param of and overloaded vertex().<br></td></tr
><tr
id=sl_svn7768_1205
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_1206
><td class="source"> * The parameters depend on the current textureMode. When using<br></td></tr
><tr
id=sl_svn7768_1207
><td class="source"> * textureMode(IMAGE), the coordinates will be relative to the size<br></td></tr
><tr
id=sl_svn7768_1208
><td class="source"> * of the image texture, when used with textureMode(NORMAL),<br></td></tr
><tr
id=sl_svn7768_1209
><td class="source"> * they&#39;ll be in the range 0..1.<br></td></tr
><tr
id=sl_svn7768_1210
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_1211
><td class="source"> * Used by both PGraphics2D (for images) and PGraphics3D.<br></td></tr
><tr
id=sl_svn7768_1212
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1213
><td class="source"> protected void vertexTexture(float u, float v) {<br></td></tr
><tr
id=sl_svn7768_1214
><td class="source"> if (textureImage == null) {<br></td></tr
><tr
id=sl_svn7768_1215
><td class="source"> throw new RuntimeException(&quot;You must first call texture() before &quot; +<br></td></tr
><tr
id=sl_svn7768_1216
><td class="source"> &quot;using u and v coordinates with vertex()&quot;);<br></td></tr
><tr
id=sl_svn7768_1217
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1218
><td class="source"> if (textureMode == IMAGE) {<br></td></tr
><tr
id=sl_svn7768_1219
><td class="source"> u /= (float) textureImage.width;<br></td></tr
><tr
id=sl_svn7768_1220
><td class="source"> v /= (float) textureImage.height;<br></td></tr
><tr
id=sl_svn7768_1221
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1222
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1223
><td class="source"> textureU = u;<br></td></tr
><tr
id=sl_svn7768_1224
><td class="source"> textureV = v;<br></td></tr
><tr
id=sl_svn7768_1225
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1226
><td class="source"> if (textureU &lt; 0) textureU = 0;<br></td></tr
><tr
id=sl_svn7768_1227
><td class="source"> else if (textureU &gt; 1) textureU = 1;<br></td></tr
><tr
id=sl_svn7768_1228
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1229
><td class="source"> if (textureV &lt; 0) textureV = 0;<br></td></tr
><tr
id=sl_svn7768_1230
><td class="source"> else if (textureV &gt; 1) textureV = 1;<br></td></tr
><tr
id=sl_svn7768_1231
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1232
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1233
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1234
><td class="source"> /** This feature is in testing, do not use or rely upon its implementation */<br></td></tr
><tr
id=sl_svn7768_1235
><td class="source"> public void breakShape() {<br></td></tr
><tr
id=sl_svn7768_1236
><td class="source"> showWarning(&quot;This renderer cannot currently handle concave shapes, &quot; +<br></td></tr
><tr
id=sl_svn7768_1237
><td class="source"> &quot;or shapes with holes.&quot;);<br></td></tr
><tr
id=sl_svn7768_1238
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1239
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1240
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1241
><td class="source"> public void endShape() {<br></td></tr
><tr
id=sl_svn7768_1242
><td class="source"> endShape(OPEN);<br></td></tr
><tr
id=sl_svn7768_1243
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1244
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1245
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1246
><td class="source"> public void endShape(int mode) {<br></td></tr
><tr
id=sl_svn7768_1247
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1248
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1249
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1250
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1251
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_1252
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1253
><td class="source"> // CURVE/BEZIER VERTEX HANDLING<br></td></tr
><tr
id=sl_svn7768_1254
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1255
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1256
><td class="source"> protected void bezierVertexCheck() {<br></td></tr
><tr
id=sl_svn7768_1257
><td class="source"> if (shape == 0 || shape != POLYGON) {<br></td></tr
><tr
id=sl_svn7768_1258
><td class="source"> throw new RuntimeException(&quot;beginShape() or beginShape(POLYGON) &quot; +<br></td></tr
><tr
id=sl_svn7768_1259
><td class="source"> &quot;must be used before bezierVertex()&quot;);<br></td></tr
><tr
id=sl_svn7768_1260
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1261
><td class="source"> if (vertexCount == 0) {<br></td></tr
><tr
id=sl_svn7768_1262
><td class="source"> throw new RuntimeException(&quot;vertex() must be used at least once&quot; +<br></td></tr
><tr
id=sl_svn7768_1263
><td class="source"> &quot;before bezierVertex()&quot;);<br></td></tr
><tr
id=sl_svn7768_1264
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1265
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1266
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1267
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1268
><td class="source"> public void bezierVertex(float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_1269
><td class="source"> float x3, float y3,<br></td></tr
><tr
id=sl_svn7768_1270
><td class="source"> float x4, float y4) {<br></td></tr
><tr
id=sl_svn7768_1271
><td class="source"> bezierInitCheck();<br></td></tr
><tr
id=sl_svn7768_1272
><td class="source"> bezierVertexCheck();<br></td></tr
><tr
id=sl_svn7768_1273
><td class="source"> PMatrix3D draw = bezierDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_1274
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1275
><td class="source"> float[] prev = vertices[vertexCount-1];<br></td></tr
><tr
id=sl_svn7768_1276
><td class="source"> float x1 = prev[X];<br></td></tr
><tr
id=sl_svn7768_1277
><td class="source"> float y1 = prev[Y];<br></td></tr
><tr
id=sl_svn7768_1278
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1279
><td class="source"> float xplot1 = draw.m10*x1 + draw.m11*x2 + draw.m12*x3 + draw.m13*x4;<br></td></tr
><tr
id=sl_svn7768_1280
><td class="source"> float xplot2 = draw.m20*x1 + draw.m21*x2 + draw.m22*x3 + draw.m23*x4;<br></td></tr
><tr
id=sl_svn7768_1281
><td class="source"> float xplot3 = draw.m30*x1 + draw.m31*x2 + draw.m32*x3 + draw.m33*x4;<br></td></tr
><tr
id=sl_svn7768_1282
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1283
><td class="source"> float yplot1 = draw.m10*y1 + draw.m11*y2 + draw.m12*y3 + draw.m13*y4;<br></td></tr
><tr
id=sl_svn7768_1284
><td class="source"> float yplot2 = draw.m20*y1 + draw.m21*y2 + draw.m22*y3 + draw.m23*y4;<br></td></tr
><tr
id=sl_svn7768_1285
><td class="source"> float yplot3 = draw.m30*y1 + draw.m31*y2 + draw.m32*y3 + draw.m33*y4;<br></td></tr
><tr
id=sl_svn7768_1286
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1287
><td class="source"> for (int j = 0; j &lt; bezierDetail; j++) {<br></td></tr
><tr
id=sl_svn7768_1288
><td class="source"> x1 += xplot1; xplot1 += xplot2; xplot2 += xplot3;<br></td></tr
><tr
id=sl_svn7768_1289
><td class="source"> y1 += yplot1; yplot1 += yplot2; yplot2 += yplot3;<br></td></tr
><tr
id=sl_svn7768_1290
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_1291
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1292
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1293
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1294
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1295
><td class="source"> public void bezierVertex(float x2, float y2, float z2,<br></td></tr
><tr
id=sl_svn7768_1296
><td class="source"> float x3, float y3, float z3,<br></td></tr
><tr
id=sl_svn7768_1297
><td class="source"> float x4, float y4, float z4) {<br></td></tr
><tr
id=sl_svn7768_1298
><td class="source"> bezierInitCheck();<br></td></tr
><tr
id=sl_svn7768_1299
><td class="source"> bezierVertexCheck();<br></td></tr
><tr
id=sl_svn7768_1300
><td class="source"> PMatrix3D draw = bezierDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_1301
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1302
><td class="source"> float[] prev = vertices[vertexCount-1];<br></td></tr
><tr
id=sl_svn7768_1303
><td class="source"> float x1 = prev[X];<br></td></tr
><tr
id=sl_svn7768_1304
><td class="source"> float y1 = prev[Y];<br></td></tr
><tr
id=sl_svn7768_1305
><td class="source"> float z1 = prev[Z];<br></td></tr
><tr
id=sl_svn7768_1306
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1307
><td class="source"> float xplot1 = draw.m10*x1 + draw.m11*x2 + draw.m12*x3 + draw.m13*x4;<br></td></tr
><tr
id=sl_svn7768_1308
><td class="source"> float xplot2 = draw.m20*x1 + draw.m21*x2 + draw.m22*x3 + draw.m23*x4;<br></td></tr
><tr
id=sl_svn7768_1309
><td class="source"> float xplot3 = draw.m30*x1 + draw.m31*x2 + draw.m32*x3 + draw.m33*x4;<br></td></tr
><tr
id=sl_svn7768_1310
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1311
><td class="source"> float yplot1 = draw.m10*y1 + draw.m11*y2 + draw.m12*y3 + draw.m13*y4;<br></td></tr
><tr
id=sl_svn7768_1312
><td class="source"> float yplot2 = draw.m20*y1 + draw.m21*y2 + draw.m22*y3 + draw.m23*y4;<br></td></tr
><tr
id=sl_svn7768_1313
><td class="source"> float yplot3 = draw.m30*y1 + draw.m31*y2 + draw.m32*y3 + draw.m33*y4;<br></td></tr
><tr
id=sl_svn7768_1314
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1315
><td class="source"> float zplot1 = draw.m10*z1 + draw.m11*z2 + draw.m12*z3 + draw.m13*z4;<br></td></tr
><tr
id=sl_svn7768_1316
><td class="source"> float zplot2 = draw.m20*z1 + draw.m21*z2 + draw.m22*z3 + draw.m23*z4;<br></td></tr
><tr
id=sl_svn7768_1317
><td class="source"> float zplot3 = draw.m30*z1 + draw.m31*z2 + draw.m32*z3 + draw.m33*z4;<br></td></tr
><tr
id=sl_svn7768_1318
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1319
><td class="source"> for (int j = 0; j &lt; bezierDetail; j++) {<br></td></tr
><tr
id=sl_svn7768_1320
><td class="source"> x1 += xplot1; xplot1 += xplot2; xplot2 += xplot3;<br></td></tr
><tr
id=sl_svn7768_1321
><td class="source"> y1 += yplot1; yplot1 += yplot2; yplot2 += yplot3;<br></td></tr
><tr
id=sl_svn7768_1322
><td class="source"> z1 += zplot1; zplot1 += zplot2; zplot2 += zplot3;<br></td></tr
><tr
id=sl_svn7768_1323
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_1324
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1325
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1326
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1327
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1328
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1329
><td class="source"> * Perform initialization specific to curveVertex(), and handle standard<br></td></tr
><tr
id=sl_svn7768_1330
><td class="source"> * error modes. Can be overridden by subclasses that need the flexibility.<br></td></tr
><tr
id=sl_svn7768_1331
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1332
><td class="source"> protected void curveVertexCheck() {<br></td></tr
><tr
id=sl_svn7768_1333
><td class="source"> if (shape != POLYGON) {<br></td></tr
><tr
id=sl_svn7768_1334
><td class="source"> throw new RuntimeException(&quot;You must use beginShape() or &quot; +<br></td></tr
><tr
id=sl_svn7768_1335
><td class="source"> &quot;beginShape(POLYGON) before curveVertex()&quot;);<br></td></tr
><tr
id=sl_svn7768_1336
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1337
><td class="source"> // to improve code init time, allocate on first use.<br></td></tr
><tr
id=sl_svn7768_1338
><td class="source"> if (curveVertices == null) {<br></td></tr
><tr
id=sl_svn7768_1339
><td class="source"> curveVertices = new float[128][3];<br></td></tr
><tr
id=sl_svn7768_1340
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1341
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1342
><td class="source"> if (curveVertexCount == curveVertices.length) {<br></td></tr
><tr
id=sl_svn7768_1343
><td class="source"> // Can&#39;t use PApplet.expand() cuz it doesn&#39;t do the copy properly<br></td></tr
><tr
id=sl_svn7768_1344
><td class="source"> float[][] temp = new float[curveVertexCount &lt;&lt; 1][3];<br></td></tr
><tr
id=sl_svn7768_1345
><td class="source"> System.arraycopy(curveVertices, 0, temp, 0, curveVertexCount);<br></td></tr
><tr
id=sl_svn7768_1346
><td class="source"> curveVertices = temp;<br></td></tr
><tr
id=sl_svn7768_1347
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1348
><td class="source"> curveInitCheck();<br></td></tr
><tr
id=sl_svn7768_1349
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1350
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1351
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1352
><td class="source"> public void curveVertex(float x, float y) {<br></td></tr
><tr
id=sl_svn7768_1353
><td class="source"> curveVertexCheck();<br></td></tr
><tr
id=sl_svn7768_1354
><td class="source"> float[] vertex = curveVertices[curveVertexCount];<br></td></tr
><tr
id=sl_svn7768_1355
><td class="source"> vertex[X] = x;<br></td></tr
><tr
id=sl_svn7768_1356
><td class="source"> vertex[Y] = y;<br></td></tr
><tr
id=sl_svn7768_1357
><td class="source"> curveVertexCount++;<br></td></tr
><tr
id=sl_svn7768_1358
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1359
><td class="source"> // draw a segment if there are enough points<br></td></tr
><tr
id=sl_svn7768_1360
><td class="source"> if (curveVertexCount &gt; 3) {<br></td></tr
><tr
id=sl_svn7768_1361
><td class="source"> curveVertexSegment(curveVertices[curveVertexCount-4][X],<br></td></tr
><tr
id=sl_svn7768_1362
><td class="source"> curveVertices[curveVertexCount-4][Y],<br></td></tr
><tr
id=sl_svn7768_1363
><td class="source"> curveVertices[curveVertexCount-3][X],<br></td></tr
><tr
id=sl_svn7768_1364
><td class="source"> curveVertices[curveVertexCount-3][Y],<br></td></tr
><tr
id=sl_svn7768_1365
><td class="source"> curveVertices[curveVertexCount-2][X],<br></td></tr
><tr
id=sl_svn7768_1366
><td class="source"> curveVertices[curveVertexCount-2][Y],<br></td></tr
><tr
id=sl_svn7768_1367
><td class="source"> curveVertices[curveVertexCount-1][X],<br></td></tr
><tr
id=sl_svn7768_1368
><td class="source"> curveVertices[curveVertexCount-1][Y]);<br></td></tr
><tr
id=sl_svn7768_1369
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1370
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1371
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1372
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1373
><td class="source"> public void curveVertex(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_1374
><td class="source"> curveVertexCheck();<br></td></tr
><tr
id=sl_svn7768_1375
><td class="source"> float[] vertex = curveVertices[curveVertexCount];<br></td></tr
><tr
id=sl_svn7768_1376
><td class="source"> vertex[X] = x;<br></td></tr
><tr
id=sl_svn7768_1377
><td class="source"> vertex[Y] = y;<br></td></tr
><tr
id=sl_svn7768_1378
><td class="source"> vertex[Z] = z;<br></td></tr
><tr
id=sl_svn7768_1379
><td class="source"> curveVertexCount++;<br></td></tr
><tr
id=sl_svn7768_1380
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1381
><td class="source"> // draw a segment if there are enough points<br></td></tr
><tr
id=sl_svn7768_1382
><td class="source"> if (curveVertexCount &gt; 3) {<br></td></tr
><tr
id=sl_svn7768_1383
><td class="source"> curveVertexSegment(curveVertices[curveVertexCount-4][X],<br></td></tr
><tr
id=sl_svn7768_1384
><td class="source"> curveVertices[curveVertexCount-4][Y],<br></td></tr
><tr
id=sl_svn7768_1385
><td class="source"> curveVertices[curveVertexCount-4][Z],<br></td></tr
><tr
id=sl_svn7768_1386
><td class="source"> curveVertices[curveVertexCount-3][X],<br></td></tr
><tr
id=sl_svn7768_1387
><td class="source"> curveVertices[curveVertexCount-3][Y],<br></td></tr
><tr
id=sl_svn7768_1388
><td class="source"> curveVertices[curveVertexCount-3][Z],<br></td></tr
><tr
id=sl_svn7768_1389
><td class="source"> curveVertices[curveVertexCount-2][X],<br></td></tr
><tr
id=sl_svn7768_1390
><td class="source"> curveVertices[curveVertexCount-2][Y],<br></td></tr
><tr
id=sl_svn7768_1391
><td class="source"> curveVertices[curveVertexCount-2][Z],<br></td></tr
><tr
id=sl_svn7768_1392
><td class="source"> curveVertices[curveVertexCount-1][X],<br></td></tr
><tr
id=sl_svn7768_1393
><td class="source"> curveVertices[curveVertexCount-1][Y],<br></td></tr
><tr
id=sl_svn7768_1394
><td class="source"> curveVertices[curveVertexCount-1][Z]);<br></td></tr
><tr
id=sl_svn7768_1395
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1396
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1397
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1398
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1399
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1400
><td class="source"> * Handle emitting a specific segment of Catmull-Rom curve. This can be<br></td></tr
><tr
id=sl_svn7768_1401
><td class="source"> * overridden by subclasses that need more efficient rendering options.<br></td></tr
><tr
id=sl_svn7768_1402
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1403
><td class="source"> protected void curveVertexSegment(float x1, float y1,<br></td></tr
><tr
id=sl_svn7768_1404
><td class="source"> float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_1405
><td class="source"> float x3, float y3,<br></td></tr
><tr
id=sl_svn7768_1406
><td class="source"> float x4, float y4) {<br></td></tr
><tr
id=sl_svn7768_1407
><td class="source"> float x0 = x2;<br></td></tr
><tr
id=sl_svn7768_1408
><td class="source"> float y0 = y2;<br></td></tr
><tr
id=sl_svn7768_1409
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1410
><td class="source"> PMatrix3D draw = curveDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_1411
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1412
><td class="source"> float xplot1 = draw.m10*x1 + draw.m11*x2 + draw.m12*x3 + draw.m13*x4;<br></td></tr
><tr
id=sl_svn7768_1413
><td class="source"> float xplot2 = draw.m20*x1 + draw.m21*x2 + draw.m22*x3 + draw.m23*x4;<br></td></tr
><tr
id=sl_svn7768_1414
><td class="source"> float xplot3 = draw.m30*x1 + draw.m31*x2 + draw.m32*x3 + draw.m33*x4;<br></td></tr
><tr
id=sl_svn7768_1415
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1416
><td class="source"> float yplot1 = draw.m10*y1 + draw.m11*y2 + draw.m12*y3 + draw.m13*y4;<br></td></tr
><tr
id=sl_svn7768_1417
><td class="source"> float yplot2 = draw.m20*y1 + draw.m21*y2 + draw.m22*y3 + draw.m23*y4;<br></td></tr
><tr
id=sl_svn7768_1418
><td class="source"> float yplot3 = draw.m30*y1 + draw.m31*y2 + draw.m32*y3 + draw.m33*y4;<br></td></tr
><tr
id=sl_svn7768_1419
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1420
><td class="source"> // vertex() will reset splineVertexCount, so save it<br></td></tr
><tr
id=sl_svn7768_1421
><td class="source"> int savedCount = curveVertexCount;<br></td></tr
><tr
id=sl_svn7768_1422
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1423
><td class="source"> vertex(x0, y0);<br></td></tr
><tr
id=sl_svn7768_1424
><td class="source"> for (int j = 0; j &lt; curveDetail; j++) {<br></td></tr
><tr
id=sl_svn7768_1425
><td class="source"> x0 += xplot1; xplot1 += xplot2; xplot2 += xplot3;<br></td></tr
><tr
id=sl_svn7768_1426
><td class="source"> y0 += yplot1; yplot1 += yplot2; yplot2 += yplot3;<br></td></tr
><tr
id=sl_svn7768_1427
><td class="source"> vertex(x0, y0);<br></td></tr
><tr
id=sl_svn7768_1428
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1429
><td class="source"> curveVertexCount = savedCount;<br></td></tr
><tr
id=sl_svn7768_1430
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1431
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1432
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1433
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1434
><td class="source"> * Handle emitting a specific segment of Catmull-Rom curve. This can be<br></td></tr
><tr
id=sl_svn7768_1435
><td class="source"> * overridden by subclasses that need more efficient rendering options.<br></td></tr
><tr
id=sl_svn7768_1436
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1437
><td class="source"> protected void curveVertexSegment(float x1, float y1, float z1,<br></td></tr
><tr
id=sl_svn7768_1438
><td class="source"> float x2, float y2, float z2,<br></td></tr
><tr
id=sl_svn7768_1439
><td class="source"> float x3, float y3, float z3,<br></td></tr
><tr
id=sl_svn7768_1440
><td class="source"> float x4, float y4, float z4) {<br></td></tr
><tr
id=sl_svn7768_1441
><td class="source"> float x0 = x2;<br></td></tr
><tr
id=sl_svn7768_1442
><td class="source"> float y0 = y2;<br></td></tr
><tr
id=sl_svn7768_1443
><td class="source"> float z0 = z2;<br></td></tr
><tr
id=sl_svn7768_1444
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1445
><td class="source"> PMatrix3D draw = curveDrawMatrix;<br></td></tr
><tr
id=sl_svn7768_1446
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1447
><td class="source"> float xplot1 = draw.m10*x1 + draw.m11*x2 + draw.m12*x3 + draw.m13*x4;<br></td></tr
><tr
id=sl_svn7768_1448
><td class="source"> float xplot2 = draw.m20*x1 + draw.m21*x2 + draw.m22*x3 + draw.m23*x4;<br></td></tr
><tr
id=sl_svn7768_1449
><td class="source"> float xplot3 = draw.m30*x1 + draw.m31*x2 + draw.m32*x3 + draw.m33*x4;<br></td></tr
><tr
id=sl_svn7768_1450
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1451
><td class="source"> float yplot1 = draw.m10*y1 + draw.m11*y2 + draw.m12*y3 + draw.m13*y4;<br></td></tr
><tr
id=sl_svn7768_1452
><td class="source"> float yplot2 = draw.m20*y1 + draw.m21*y2 + draw.m22*y3 + draw.m23*y4;<br></td></tr
><tr
id=sl_svn7768_1453
><td class="source"> float yplot3 = draw.m30*y1 + draw.m31*y2 + draw.m32*y3 + draw.m33*y4;<br></td></tr
><tr
id=sl_svn7768_1454
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1455
><td class="source"> // vertex() will reset splineVertexCount, so save it<br></td></tr
><tr
id=sl_svn7768_1456
><td class="source"> int savedCount = curveVertexCount;<br></td></tr
><tr
id=sl_svn7768_1457
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1458
><td class="source"> float zplot1 = draw.m10*z1 + draw.m11*z2 + draw.m12*z3 + draw.m13*z4;<br></td></tr
><tr
id=sl_svn7768_1459
><td class="source"> float zplot2 = draw.m20*z1 + draw.m21*z2 + draw.m22*z3 + draw.m23*z4;<br></td></tr
><tr
id=sl_svn7768_1460
><td class="source"> float zplot3 = draw.m30*z1 + draw.m31*z2 + draw.m32*z3 + draw.m33*z4;<br></td></tr
><tr
id=sl_svn7768_1461
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1462
><td class="source"> vertex(x0, y0, z0);<br></td></tr
><tr
id=sl_svn7768_1463
><td class="source"> for (int j = 0; j &lt; curveDetail; j++) {<br></td></tr
><tr
id=sl_svn7768_1464
><td class="source"> x0 += xplot1; xplot1 += xplot2; xplot2 += xplot3;<br></td></tr
><tr
id=sl_svn7768_1465
><td class="source"> y0 += yplot1; yplot1 += yplot2; yplot2 += yplot3;<br></td></tr
><tr
id=sl_svn7768_1466
><td class="source"> z0 += zplot1; zplot1 += zplot2; zplot2 += zplot3;<br></td></tr
><tr
id=sl_svn7768_1467
><td class="source"> vertex(x0, y0, z0);<br></td></tr
><tr
id=sl_svn7768_1468
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1469
><td class="source"> curveVertexCount = savedCount;<br></td></tr
><tr
id=sl_svn7768_1470
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1471
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1472
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1473
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1474
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_1475
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1476
><td class="source"> // SIMPLE SHAPES WITH ANALOGUES IN beginShape()<br></td></tr
><tr
id=sl_svn7768_1477
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1478
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1479
><td class="source"> public void point(float x, float y) {<br></td></tr
><tr
id=sl_svn7768_1480
><td class="source"> beginShape(POINTS);<br></td></tr
><tr
id=sl_svn7768_1481
><td class="source"> vertex(x, y);<br></td></tr
><tr
id=sl_svn7768_1482
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1483
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1484
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1485
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1486
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1487
><td class="source"> * Draws a point, a coordinate in space at the dimension of one pixel.<br></td></tr
><tr
id=sl_svn7768_1488
><td class="source"> * The first parameter is the horizontal value for the point, the second<br></td></tr
><tr
id=sl_svn7768_1489
><td class="source"> * value is the vertical value for the point, and the optional third value<br></td></tr
><tr
id=sl_svn7768_1490
><td class="source"> * is the depth value. Drawing this shape in 3D using the &lt;b&gt;z&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_1491
><td class="source"> * parameter requires the P3D or OPENGL parameter in combination with<br></td></tr
><tr
id=sl_svn7768_1492
><td class="source"> * size as shown in the above example.<br></td></tr
><tr
id=sl_svn7768_1493
><td class="source"> * &lt;br&gt;&lt;br&gt;Due to what appears to be a bug in Apple&#39;s Java implementation,<br></td></tr
><tr
id=sl_svn7768_1494
><td class="source"> * the point() and set() methods are extremely slow in some circumstances<br></td></tr
><tr
id=sl_svn7768_1495
><td class="source"> * when used with the default renderer. Using P2D or P3D will fix the<br></td></tr
><tr
id=sl_svn7768_1496
><td class="source"> * problem. Grouping many calls to point() or set() together can also<br></td></tr
><tr
id=sl_svn7768_1497
><td class="source"> * help. (&lt;a href=&quot;http://dev.processing.org/bugs/show_bug.cgi?id=1094&quot;&gt;Bug 1094&lt;/a&gt;)<br></td></tr
><tr
id=sl_svn7768_1498
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1499
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1500
><td class="source"> * @param x x-coordinate of the point<br></td></tr
><tr
id=sl_svn7768_1501
><td class="source"> * @param y y-coordinate of the point<br></td></tr
><tr
id=sl_svn7768_1502
><td class="source"> * @param z z-coordinate of the point<br></td></tr
><tr
id=sl_svn7768_1503
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1504
><td class="source"> * @see PGraphics#beginShape()<br></td></tr
><tr
id=sl_svn7768_1505
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1506
><td class="source"> public void point(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_1507
><td class="source"> beginShape(POINTS);<br></td></tr
><tr
id=sl_svn7768_1508
><td class="source"> vertex(x, y, z);<br></td></tr
><tr
id=sl_svn7768_1509
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1510
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1511
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1512
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1513
><td class="source"> public void line(float x1, float y1, float x2, float y2) {<br></td></tr
><tr
id=sl_svn7768_1514
><td class="source"> beginShape(LINES);<br></td></tr
><tr
id=sl_svn7768_1515
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_1516
><td class="source"> vertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_1517
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1518
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1519
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1520
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1521
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1522
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1523
><td class="source"> * Draws a line (a direct path between two points) to the screen.<br></td></tr
><tr
id=sl_svn7768_1524
><td class="source"> * The version of &lt;b&gt;line()&lt;/b&gt; with four parameters draws the line in 2D.<br></td></tr
><tr
id=sl_svn7768_1525
><td class="source"> * To color a line, use the &lt;b&gt;stroke()&lt;/b&gt; function. A line cannot be<br></td></tr
><tr
id=sl_svn7768_1526
><td class="source"> * filled, therefore the &lt;b&gt;fill()&lt;/b&gt; method will not affect the color<br></td></tr
><tr
id=sl_svn7768_1527
><td class="source"> * of a line. 2D lines are drawn with a width of one pixel by default,<br></td></tr
><tr
id=sl_svn7768_1528
><td class="source"> * but this can be changed with the &lt;b&gt;strokeWeight()&lt;/b&gt; function.<br></td></tr
><tr
id=sl_svn7768_1529
><td class="source"> * The version with six parameters allows the line to be placed anywhere<br></td></tr
><tr
id=sl_svn7768_1530
><td class="source"> * within XYZ space. Drawing this shape in 3D using the &lt;b&gt;z&lt;/b&gt; parameter<br></td></tr
><tr
id=sl_svn7768_1531
><td class="source"> * requires the P3D or OPENGL parameter in combination with size as shown<br></td></tr
><tr
id=sl_svn7768_1532
><td class="source"> * in the above example.<br></td></tr
><tr
id=sl_svn7768_1533
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1534
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1535
><td class="source"> * @param x1 x-coordinate of the first point<br></td></tr
><tr
id=sl_svn7768_1536
><td class="source"> * @param y1 y-coordinate of the first point<br></td></tr
><tr
id=sl_svn7768_1537
><td class="source"> * @param z1 z-coordinate of the first point<br></td></tr
><tr
id=sl_svn7768_1538
><td class="source"> * @param x2 x-coordinate of the second point<br></td></tr
><tr
id=sl_svn7768_1539
><td class="source"> * @param y2 y-coordinate of the second point<br></td></tr
><tr
id=sl_svn7768_1540
><td class="source"> * @param z2 z-coordinate of the second point<br></td></tr
><tr
id=sl_svn7768_1541
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1542
><td class="source"> * @see PGraphics#strokeWeight(float)<br></td></tr
><tr
id=sl_svn7768_1543
><td class="source"> * @see PGraphics#strokeJoin(int)<br></td></tr
><tr
id=sl_svn7768_1544
><td class="source"> * @see PGraphics#strokeCap(int)<br></td></tr
><tr
id=sl_svn7768_1545
><td class="source"> * @see PGraphics#beginShape()<br></td></tr
><tr
id=sl_svn7768_1546
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1547
><td class="source"> public void line(float x1, float y1, float z1,<br></td></tr
><tr
id=sl_svn7768_1548
><td class="source"> float x2, float y2, float z2) {<br></td></tr
><tr
id=sl_svn7768_1549
><td class="source"> beginShape(LINES);<br></td></tr
><tr
id=sl_svn7768_1550
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_1551
><td class="source"> vertex(x2, y2, z2);<br></td></tr
><tr
id=sl_svn7768_1552
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1553
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1554
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1555
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1556
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1557
><td class="source"> * A triangle is a plane created by connecting three points. The first two<br></td></tr
><tr
id=sl_svn7768_1558
><td class="source"> * arguments specify the first point, the middle two arguments specify<br></td></tr
><tr
id=sl_svn7768_1559
><td class="source"> * the second point, and the last two arguments specify the third point.<br></td></tr
><tr
id=sl_svn7768_1560
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1561
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1562
><td class="source"> * @param x1 x-coordinate of the first point<br></td></tr
><tr
id=sl_svn7768_1563
><td class="source"> * @param y1 y-coordinate of the first point<br></td></tr
><tr
id=sl_svn7768_1564
><td class="source"> * @param x2 x-coordinate of the second point<br></td></tr
><tr
id=sl_svn7768_1565
><td class="source"> * @param y2 y-coordinate of the second point<br></td></tr
><tr
id=sl_svn7768_1566
><td class="source"> * @param x3 x-coordinate of the third point<br></td></tr
><tr
id=sl_svn7768_1567
><td class="source"> * @param y3 y-coordinate of the third point<br></td></tr
><tr
id=sl_svn7768_1568
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1569
><td class="source"> * @see PApplet#beginShape()<br></td></tr
><tr
id=sl_svn7768_1570
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1571
><td class="source"> public void triangle(float x1, float y1, float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_1572
><td class="source"> float x3, float y3) {<br></td></tr
><tr
id=sl_svn7768_1573
><td class="source"> beginShape(TRIANGLES);<br></td></tr
><tr
id=sl_svn7768_1574
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_1575
><td class="source"> vertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_1576
><td class="source"> vertex(x3, y3);<br></td></tr
><tr
id=sl_svn7768_1577
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1578
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1579
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1580
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1581
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1582
><td class="source"> * A quad is a quadrilateral, a four sided polygon. It is similar to<br></td></tr
><tr
id=sl_svn7768_1583
><td class="source"> * a rectangle, but the angles between its edges are not constrained<br></td></tr
><tr
id=sl_svn7768_1584
><td class="source"> * ninety degrees. The first pair of parameters (x1,y1) sets the<br></td></tr
><tr
id=sl_svn7768_1585
><td class="source"> * first vertex and the subsequent pairs should proceed clockwise or<br></td></tr
><tr
id=sl_svn7768_1586
><td class="source"> * counter-clockwise around the defined shape.<br></td></tr
><tr
id=sl_svn7768_1587
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1588
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1589
><td class="source"> * @param x1 x-coordinate of the first corner<br></td></tr
><tr
id=sl_svn7768_1590
><td class="source"> * @param y1 y-coordinate of the first corner<br></td></tr
><tr
id=sl_svn7768_1591
><td class="source"> * @param x2 x-coordinate of the second corner<br></td></tr
><tr
id=sl_svn7768_1592
><td class="source"> * @param y2 y-coordinate of the second corner<br></td></tr
><tr
id=sl_svn7768_1593
><td class="source"> * @param x3 x-coordinate of the third corner<br></td></tr
><tr
id=sl_svn7768_1594
><td class="source"> * @param y3 y-coordinate of the third corner<br></td></tr
><tr
id=sl_svn7768_1595
><td class="source"> * @param x4 x-coordinate of the fourth corner<br></td></tr
><tr
id=sl_svn7768_1596
><td class="source"> * @param y4 y-coordinate of the fourth corner<br></td></tr
><tr
id=sl_svn7768_1597
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1598
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1599
><td class="source"> public void quad(float x1, float y1, float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_1600
><td class="source"> float x3, float y3, float x4, float y4) {<br></td></tr
><tr
id=sl_svn7768_1601
><td class="source"> beginShape(QUADS);<br></td></tr
><tr
id=sl_svn7768_1602
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_1603
><td class="source"> vertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_1604
><td class="source"> vertex(x3, y3);<br></td></tr
><tr
id=sl_svn7768_1605
><td class="source"> vertex(x4, y4);<br></td></tr
><tr
id=sl_svn7768_1606
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_1607
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1608
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1609
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1610
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1611
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_1612
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1613
><td class="source"> // RECT<br></td></tr
><tr
id=sl_svn7768_1614
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1615
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1616
><td class="source"> public void rectMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_1617
><td class="source"> rectMode = mode;<br></td></tr
><tr
id=sl_svn7768_1618
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1619
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1620
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1621
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1622
><td class="source"> * Draws a rectangle to the screen. A rectangle is a four-sided shape with<br></td></tr
><tr
id=sl_svn7768_1623
><td class="source"> * every angle at ninety degrees. The first two parameters set the location,<br></td></tr
><tr
id=sl_svn7768_1624
><td class="source"> * the third sets the width, and the fourth sets the height. The origin is<br></td></tr
><tr
id=sl_svn7768_1625
><td class="source"> * changed with the &lt;b&gt;rectMode()&lt;/b&gt; function.<br></td></tr
><tr
id=sl_svn7768_1626
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1627
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1628
><td class="source"> * @param a x-coordinate of the rectangle<br></td></tr
><tr
id=sl_svn7768_1629
><td class="source"> * @param b y-coordinate of the rectangle<br></td></tr
><tr
id=sl_svn7768_1630
><td class="source"> * @param c width of the rectangle<br></td></tr
><tr
id=sl_svn7768_1631
><td class="source"> * @param d height of the rectangle<br></td></tr
><tr
id=sl_svn7768_1632
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1633
><td class="source"> * @see PGraphics#rectMode(int)<br></td></tr
><tr
id=sl_svn7768_1634
><td class="source"> * @see PGraphics#quad(float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_1635
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1636
><td class="source"> public void rect(float a, float b, float c, float d) {<br></td></tr
><tr
id=sl_svn7768_1637
><td class="source"> float hradius, vradius;<br></td></tr
><tr
id=sl_svn7768_1638
><td class="source"> switch (rectMode) {<br></td></tr
><tr
id=sl_svn7768_1639
><td class="source"> case CORNERS:<br></td></tr
><tr
id=sl_svn7768_1640
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1641
><td class="source"> case CORNER:<br></td></tr
><tr
id=sl_svn7768_1642
><td class="source"> c += a; d += b;<br></td></tr
><tr
id=sl_svn7768_1643
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1644
><td class="source"> case RADIUS:<br></td></tr
><tr
id=sl_svn7768_1645
><td class="source"> hradius = c;<br></td></tr
><tr
id=sl_svn7768_1646
><td class="source"> vradius = d;<br></td></tr
><tr
id=sl_svn7768_1647
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1648
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1649
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1650
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1651
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1652
><td class="source"> case CENTER:<br></td></tr
><tr
id=sl_svn7768_1653
><td class="source"> hradius = c / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1654
><td class="source"> vradius = d / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1655
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1656
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1657
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1658
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1659
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1660
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1661
><td class="source"> if (a &gt; c) {<br></td></tr
><tr
id=sl_svn7768_1662
><td class="source"> float temp = a; a = c; c = temp;<br></td></tr
><tr
id=sl_svn7768_1663
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1664
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1665
><td class="source"> if (b &gt; d) {<br></td></tr
><tr
id=sl_svn7768_1666
><td class="source"> float temp = b; b = d; d = temp;<br></td></tr
><tr
id=sl_svn7768_1667
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1668
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1669
><td class="source"> rectImpl(a, b, c, d);<br></td></tr
><tr
id=sl_svn7768_1670
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1671
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1672
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1673
><td class="source"> protected void rectImpl(float x1, float y1, float x2, float y2) {<br></td></tr
><tr
id=sl_svn7768_1674
><td class="source"> quad(x1, y1, x2, y1, x2, y2, x1, y2);<br></td></tr
><tr
id=sl_svn7768_1675
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1676
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1677
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1678
><td class="source"> // Still need to do a lot of work here to make it behave across renderers<br></td></tr
><tr
id=sl_svn7768_1679
><td class="source"> // (e.g. not all renderers use the vertices array)<br></td></tr
><tr
id=sl_svn7768_1680
><td class="source"> // Also seems to be some issues on quality here (too dense)<br></td></tr
><tr
id=sl_svn7768_1681
><td class="source"> // http://code.google.com/p/processing/issues/detail?id=265<br></td></tr
><tr
id=sl_svn7768_1682
><td class="source"> private void quadraticVertex(float cpx, float cpy, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_1683
><td class="source"> float[] prev = vertices[vertexCount - 1];<br></td></tr
><tr
id=sl_svn7768_1684
><td class="source"> float prevX = prev[X];<br></td></tr
><tr
id=sl_svn7768_1685
><td class="source"> float prevY = prev[Y];<br></td></tr
><tr
id=sl_svn7768_1686
><td class="source"> float cp1x = prevX + 2.0f/3.0f*(cpx - prevX);<br></td></tr
><tr
id=sl_svn7768_1687
><td class="source"> float cp1y = prevY + 2.0f/3.0f*(cpy - prevY);<br></td></tr
><tr
id=sl_svn7768_1688
><td class="source"> float cp2x = cp1x + (x - prevX)/3.0f;<br></td></tr
><tr
id=sl_svn7768_1689
><td class="source"> float cp2y = cp1y + (y - prevY)/3.0f;<br></td></tr
><tr
id=sl_svn7768_1690
><td class="source"> bezierVertex(cp1x, cp1y, cp2x, cp2y, x, y);<br></td></tr
><tr
id=sl_svn7768_1691
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1692
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1693
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1694
><td class="source"> public void rect(float a, float b, float c, float d, float hr, float vr) {<br></td></tr
><tr
id=sl_svn7768_1695
><td class="source"> float hradius, vradius;<br></td></tr
><tr
id=sl_svn7768_1696
><td class="source"> switch (rectMode) {<br></td></tr
><tr
id=sl_svn7768_1697
><td class="source"> case CORNERS:<br></td></tr
><tr
id=sl_svn7768_1698
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1699
><td class="source"> case CORNER:<br></td></tr
><tr
id=sl_svn7768_1700
><td class="source"> c += a; d += b;<br></td></tr
><tr
id=sl_svn7768_1701
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1702
><td class="source"> case RADIUS:<br></td></tr
><tr
id=sl_svn7768_1703
><td class="source"> hradius = c;<br></td></tr
><tr
id=sl_svn7768_1704
><td class="source"> vradius = d;<br></td></tr
><tr
id=sl_svn7768_1705
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1706
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1707
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1708
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1709
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1710
><td class="source"> case CENTER:<br></td></tr
><tr
id=sl_svn7768_1711
><td class="source"> hradius = c / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1712
><td class="source"> vradius = d / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1713
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1714
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1715
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1716
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1717
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1718
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1719
><td class="source"> if (a &gt; c) {<br></td></tr
><tr
id=sl_svn7768_1720
><td class="source"> float temp = a; a = c; c = temp;<br></td></tr
><tr
id=sl_svn7768_1721
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1722
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1723
><td class="source"> if (b &gt; d) {<br></td></tr
><tr
id=sl_svn7768_1724
><td class="source"> float temp = b; b = d; d = temp;<br></td></tr
><tr
id=sl_svn7768_1725
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1726
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1727
><td class="source"> rectImpl(a, b, c, d, hr, vr);<br></td></tr
><tr
id=sl_svn7768_1728
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1729
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1730
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1731
><td class="source"> protected void rectImpl(float x1, float y1, float x2, float y2, float hr, float vr) {<br></td></tr
><tr
id=sl_svn7768_1732
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_1733
><td class="source">// vertex(x1+hr, y1);<br></td></tr
><tr
id=sl_svn7768_1734
><td class="source"> vertex(x2-hr, y1);<br></td></tr
><tr
id=sl_svn7768_1735
><td class="source"> quadraticVertex(x2, y1, x2, y1+vr);<br></td></tr
><tr
id=sl_svn7768_1736
><td class="source"> vertex(x2, y2-vr);<br></td></tr
><tr
id=sl_svn7768_1737
><td class="source"> quadraticVertex(x2, y2, x2-hr, y2);<br></td></tr
><tr
id=sl_svn7768_1738
><td class="source"> vertex(x1+hr, y2);<br></td></tr
><tr
id=sl_svn7768_1739
><td class="source"> quadraticVertex(x1, y2, x1, y2-vr);<br></td></tr
><tr
id=sl_svn7768_1740
><td class="source"> vertex(x1, y1+vr);<br></td></tr
><tr
id=sl_svn7768_1741
><td class="source"> quadraticVertex(x1, y1, x1+hr, y1);<br></td></tr
><tr
id=sl_svn7768_1742
><td class="source">// endShape();<br></td></tr
><tr
id=sl_svn7768_1743
><td class="source"> endShape(CLOSE);<br></td></tr
><tr
id=sl_svn7768_1744
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1745
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1746
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1747
><td class="source"> public void rect(float a, float b, float c, float d,<br></td></tr
><tr
id=sl_svn7768_1748
><td class="source"> float tl, float tr, float bl, float br) {<br></td></tr
><tr
id=sl_svn7768_1749
><td class="source"> float hradius, vradius;<br></td></tr
><tr
id=sl_svn7768_1750
><td class="source"> switch (rectMode) {<br></td></tr
><tr
id=sl_svn7768_1751
><td class="source"> case CORNERS:<br></td></tr
><tr
id=sl_svn7768_1752
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1753
><td class="source"> case CORNER:<br></td></tr
><tr
id=sl_svn7768_1754
><td class="source"> c += a; d += b;<br></td></tr
><tr
id=sl_svn7768_1755
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1756
><td class="source"> case RADIUS:<br></td></tr
><tr
id=sl_svn7768_1757
><td class="source"> hradius = c;<br></td></tr
><tr
id=sl_svn7768_1758
><td class="source"> vradius = d;<br></td></tr
><tr
id=sl_svn7768_1759
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1760
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1761
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1762
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1763
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_1764
><td class="source"> case CENTER:<br></td></tr
><tr
id=sl_svn7768_1765
><td class="source"> hradius = c / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1766
><td class="source"> vradius = d / 2.0f;<br></td></tr
><tr
id=sl_svn7768_1767
><td class="source"> c = a + hradius;<br></td></tr
><tr
id=sl_svn7768_1768
><td class="source"> d = b + vradius;<br></td></tr
><tr
id=sl_svn7768_1769
><td class="source"> a -= hradius;<br></td></tr
><tr
id=sl_svn7768_1770
><td class="source"> b -= vradius;<br></td></tr
><tr
id=sl_svn7768_1771
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1772
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1773
><td class="source"> if (a &gt; c) {<br></td></tr
><tr
id=sl_svn7768_1774
><td class="source"> float temp = a; a = c; c = temp;<br></td></tr
><tr
id=sl_svn7768_1775
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1776
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1777
><td class="source"> if (b &gt; d) {<br></td></tr
><tr
id=sl_svn7768_1778
><td class="source"> float temp = b; b = d; d = temp;<br></td></tr
><tr
id=sl_svn7768_1779
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1780
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1781
><td class="source"> rectImpl(a, b, c, d, tl, tr, bl, br);<br></td></tr
><tr
id=sl_svn7768_1782
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1783
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1784
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_1785
><td class="source"> protected void rectImpl(float x1, float y1, float x2, float y2, <br></td></tr
><tr
id=sl_svn7768_1786
><td class="source"> float tl, float tr, float bl, float br) {<br></td></tr
><tr
id=sl_svn7768_1787
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_1788
><td class="source">// vertex(x1+tl, y1);<br></td></tr
><tr
id=sl_svn7768_1789
><td class="source"> if (tr != 0) {<br></td></tr
><tr
id=sl_svn7768_1790
><td class="source"> vertex(x2-tr, y1);<br></td></tr
><tr
id=sl_svn7768_1791
><td class="source"> quadraticVertex(x2, y1, x2, y1+tr);<br></td></tr
><tr
id=sl_svn7768_1792
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1793
><td class="source"> vertex(x2, y1);<br></td></tr
><tr
id=sl_svn7768_1794
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1795
><td class="source"> if (br != 0) {<br></td></tr
><tr
id=sl_svn7768_1796
><td class="source"> vertex(x2, y2-br);<br></td></tr
><tr
id=sl_svn7768_1797
><td class="source"> quadraticVertex(x2, y2, x2-br, y2);<br></td></tr
><tr
id=sl_svn7768_1798
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1799
><td class="source"> vertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_1800
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1801
><td class="source"> if (bl != 0) {<br></td></tr
><tr
id=sl_svn7768_1802
><td class="source"> vertex(x1+bl, y2);<br></td></tr
><tr
id=sl_svn7768_1803
><td class="source"> quadraticVertex(x1, y2, x1, y2-bl);<br></td></tr
><tr
id=sl_svn7768_1804
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1805
><td class="source"> vertex(x1, y2);<br></td></tr
><tr
id=sl_svn7768_1806
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1807
><td class="source"> if (tl != 0) {<br></td></tr
><tr
id=sl_svn7768_1808
><td class="source"> vertex(x1, y1+tl);<br></td></tr
><tr
id=sl_svn7768_1809
><td class="source"> quadraticVertex(x1, y1, x1+tl, y1);<br></td></tr
><tr
id=sl_svn7768_1810
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_1811
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_1812
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1813
><td class="source">// endShape();<br></td></tr
><tr
id=sl_svn7768_1814
><td class="source"> endShape(CLOSE);<br></td></tr
><tr
id=sl_svn7768_1815
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1816
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1817
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1818
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1819
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_1820
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1821
><td class="source"> // ELLIPSE AND ARC<br></td></tr
><tr
id=sl_svn7768_1822
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1823
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1824
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1825
><td class="source"> * The origin of the ellipse is modified by the &lt;b&gt;ellipseMode()&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_1826
><td class="source"> * function. The default configuration is &lt;b&gt;ellipseMode(CENTER)&lt;/b&gt;,<br></td></tr
><tr
id=sl_svn7768_1827
><td class="source"> * which specifies the location of the ellipse as the center of the shape.<br></td></tr
><tr
id=sl_svn7768_1828
><td class="source"> * The RADIUS mode is the same, but the width and height parameters to<br></td></tr
><tr
id=sl_svn7768_1829
><td class="source"> * &lt;b&gt;ellipse()&lt;/b&gt; specify the radius of the ellipse, rather than the<br></td></tr
><tr
id=sl_svn7768_1830
><td class="source"> * diameter. The CORNER mode draws the shape from the upper-left corner<br></td></tr
><tr
id=sl_svn7768_1831
><td class="source"> * of its bounding box. The CORNERS mode uses the four parameters to<br></td></tr
><tr
id=sl_svn7768_1832
><td class="source"> * &lt;b&gt;ellipse()&lt;/b&gt; to set two opposing corners of the ellipse&#39;s bounding<br></td></tr
><tr
id=sl_svn7768_1833
><td class="source"> * box. The parameter must be written in &quot;ALL CAPS&quot; because Processing<br></td></tr
><tr
id=sl_svn7768_1834
><td class="source"> * syntax is case sensitive.<br></td></tr
><tr
id=sl_svn7768_1835
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1836
><td class="source"> * @webref shape:attributes<br></td></tr
><tr
id=sl_svn7768_1837
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1838
><td class="source"> * @param mode Either CENTER, RADIUS, CORNER, or CORNERS.<br></td></tr
><tr
id=sl_svn7768_1839
><td class="source"> * @see PApplet#ellipse(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_1840
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1841
><td class="source"> public void ellipseMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_1842
><td class="source"> ellipseMode = mode;<br></td></tr
><tr
id=sl_svn7768_1843
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1844
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1845
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1846
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1847
><td class="source"> * Draws an ellipse (oval) in the display window. An ellipse with an equal<br></td></tr
><tr
id=sl_svn7768_1848
><td class="source"> * &lt;b&gt;width&lt;/b&gt; and &lt;b&gt;height&lt;/b&gt; is a circle. The first two parameters set<br></td></tr
><tr
id=sl_svn7768_1849
><td class="source"> * the location, the third sets the width, and the fourth sets the height.<br></td></tr
><tr
id=sl_svn7768_1850
><td class="source"> * The origin may be changed with the &lt;b&gt;ellipseMode()&lt;/b&gt; function.<br></td></tr
><tr
id=sl_svn7768_1851
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1852
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1853
><td class="source"> * @param a x-coordinate of the ellipse<br></td></tr
><tr
id=sl_svn7768_1854
><td class="source"> * @param b y-coordinate of the ellipse<br></td></tr
><tr
id=sl_svn7768_1855
><td class="source"> * @param c width of the ellipse<br></td></tr
><tr
id=sl_svn7768_1856
><td class="source"> * @param d height of the ellipse<br></td></tr
><tr
id=sl_svn7768_1857
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1858
><td class="source"> * @see PApplet#ellipseMode(int)<br></td></tr
><tr
id=sl_svn7768_1859
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1860
><td class="source"> public void ellipse(float a, float b, float c, float d) {<br></td></tr
><tr
id=sl_svn7768_1861
><td class="source"> float x = a;<br></td></tr
><tr
id=sl_svn7768_1862
><td class="source"> float y = b;<br></td></tr
><tr
id=sl_svn7768_1863
><td class="source"> float w = c;<br></td></tr
><tr
id=sl_svn7768_1864
><td class="source"> float h = d;<br></td></tr
><tr
id=sl_svn7768_1865
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1866
><td class="source"> if (ellipseMode == CORNERS) {<br></td></tr
><tr
id=sl_svn7768_1867
><td class="source"> w = c - a;<br></td></tr
><tr
id=sl_svn7768_1868
><td class="source"> h = d - b;<br></td></tr
><tr
id=sl_svn7768_1869
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1870
><td class="source"> } else if (ellipseMode == RADIUS) {<br></td></tr
><tr
id=sl_svn7768_1871
><td class="source"> x = a - c;<br></td></tr
><tr
id=sl_svn7768_1872
><td class="source"> y = b - d;<br></td></tr
><tr
id=sl_svn7768_1873
><td class="source"> w = c * 2;<br></td></tr
><tr
id=sl_svn7768_1874
><td class="source"> h = d * 2;<br></td></tr
><tr
id=sl_svn7768_1875
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1876
><td class="source"> } else if (ellipseMode == DIAMETER) {<br></td></tr
><tr
id=sl_svn7768_1877
><td class="source"> x = a - c/2f;<br></td></tr
><tr
id=sl_svn7768_1878
><td class="source"> y = b - d/2f;<br></td></tr
><tr
id=sl_svn7768_1879
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1880
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1881
><td class="source"> if (w &lt; 0) { // undo negative width<br></td></tr
><tr
id=sl_svn7768_1882
><td class="source"> x += w;<br></td></tr
><tr
id=sl_svn7768_1883
><td class="source"> w = -w;<br></td></tr
><tr
id=sl_svn7768_1884
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1885
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1886
><td class="source"> if (h &lt; 0) { // undo negative height<br></td></tr
><tr
id=sl_svn7768_1887
><td class="source"> y += h;<br></td></tr
><tr
id=sl_svn7768_1888
><td class="source"> h = -h;<br></td></tr
><tr
id=sl_svn7768_1889
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1890
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1891
><td class="source"> ellipseImpl(x, y, w, h);<br></td></tr
><tr
id=sl_svn7768_1892
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1893
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1894
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1895
><td class="source"> protected void ellipseImpl(float x, float y, float w, float h) {<br></td></tr
><tr
id=sl_svn7768_1896
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1897
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1898
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1899
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1900
><td class="source"> * Draws an arc in the display window.<br></td></tr
><tr
id=sl_svn7768_1901
><td class="source"> * Arcs are drawn along the outer edge of an ellipse defined by the<br></td></tr
><tr
id=sl_svn7768_1902
><td class="source"> * &lt;b&gt;x&lt;/b&gt;, &lt;b&gt;y&lt;/b&gt;, &lt;b&gt;width&lt;/b&gt; and &lt;b&gt;height&lt;/b&gt; parameters.<br></td></tr
><tr
id=sl_svn7768_1903
><td class="source"> * The origin or the arc&#39;s ellipse may be changed with the<br></td></tr
><tr
id=sl_svn7768_1904
><td class="source"> * &lt;b&gt;ellipseMode()&lt;/b&gt; function.<br></td></tr
><tr
id=sl_svn7768_1905
><td class="source"> * The &lt;b&gt;start&lt;/b&gt; and &lt;b&gt;stop&lt;/b&gt; parameters specify the angles<br></td></tr
><tr
id=sl_svn7768_1906
><td class="source"> * at which to draw the arc.<br></td></tr
><tr
id=sl_svn7768_1907
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1908
><td class="source"> * @webref shape:2d_primitives<br></td></tr
><tr
id=sl_svn7768_1909
><td class="source"> * @param a x-coordinate of the arc&#39;s ellipse<br></td></tr
><tr
id=sl_svn7768_1910
><td class="source"> * @param b y-coordinate of the arc&#39;s ellipse<br></td></tr
><tr
id=sl_svn7768_1911
><td class="source"> * @param c width of the arc&#39;s ellipse<br></td></tr
><tr
id=sl_svn7768_1912
><td class="source"> * @param d height of the arc&#39;s ellipse<br></td></tr
><tr
id=sl_svn7768_1913
><td class="source"> * @param start angle to start the arc, specified in radians<br></td></tr
><tr
id=sl_svn7768_1914
><td class="source"> * @param stop angle to stop the arc, specified in radians<br></td></tr
><tr
id=sl_svn7768_1915
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1916
><td class="source"> * @see PGraphics#ellipseMode(int)<br></td></tr
><tr
id=sl_svn7768_1917
><td class="source"> * @see PGraphics#ellipse(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_1918
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1919
><td class="source"> public void arc(float a, float b, float c, float d,<br></td></tr
><tr
id=sl_svn7768_1920
><td class="source"> float start, float stop) {<br></td></tr
><tr
id=sl_svn7768_1921
><td class="source"> float x = a;<br></td></tr
><tr
id=sl_svn7768_1922
><td class="source"> float y = b;<br></td></tr
><tr
id=sl_svn7768_1923
><td class="source"> float w = c;<br></td></tr
><tr
id=sl_svn7768_1924
><td class="source"> float h = d;<br></td></tr
><tr
id=sl_svn7768_1925
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1926
><td class="source"> if (ellipseMode == CORNERS) {<br></td></tr
><tr
id=sl_svn7768_1927
><td class="source"> w = c - a;<br></td></tr
><tr
id=sl_svn7768_1928
><td class="source"> h = d - b;<br></td></tr
><tr
id=sl_svn7768_1929
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1930
><td class="source"> } else if (ellipseMode == RADIUS) {<br></td></tr
><tr
id=sl_svn7768_1931
><td class="source"> x = a - c;<br></td></tr
><tr
id=sl_svn7768_1932
><td class="source"> y = b - d;<br></td></tr
><tr
id=sl_svn7768_1933
><td class="source"> w = c * 2;<br></td></tr
><tr
id=sl_svn7768_1934
><td class="source"> h = d * 2;<br></td></tr
><tr
id=sl_svn7768_1935
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1936
><td class="source"> } else if (ellipseMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_1937
><td class="source"> x = a - c/2f;<br></td></tr
><tr
id=sl_svn7768_1938
><td class="source"> y = b - d/2f;<br></td></tr
><tr
id=sl_svn7768_1939
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1940
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1941
><td class="source"> // make sure this loop will exit before starting while<br></td></tr
><tr
id=sl_svn7768_1942
><td class="source"> if (Float.isInfinite(start) || Float.isInfinite(stop)) return;<br></td></tr
><tr
id=sl_svn7768_1943
><td class="source">// while (stop &lt; start) stop += TWO_PI;<br></td></tr
><tr
id=sl_svn7768_1944
><td class="source"> if (stop &lt; start) return; // why bother<br></td></tr
><tr
id=sl_svn7768_1945
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1946
><td class="source"> // make sure that we&#39;re starting at a useful point<br></td></tr
><tr
id=sl_svn7768_1947
><td class="source"> while (start &lt; 0) {<br></td></tr
><tr
id=sl_svn7768_1948
><td class="source"> start += TWO_PI;<br></td></tr
><tr
id=sl_svn7768_1949
><td class="source"> stop += TWO_PI;<br></td></tr
><tr
id=sl_svn7768_1950
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1951
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1952
><td class="source"> if (stop - start &gt; TWO_PI) {<br></td></tr
><tr
id=sl_svn7768_1953
><td class="source"> start = 0;<br></td></tr
><tr
id=sl_svn7768_1954
><td class="source"> stop = TWO_PI;<br></td></tr
><tr
id=sl_svn7768_1955
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1956
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1957
><td class="source"> arcImpl(x, y, w, h, start, stop);<br></td></tr
><tr
id=sl_svn7768_1958
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1959
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1960
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1961
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1962
><td class="source"> * Start and stop are in radians, converted by the parent function.<br></td></tr
><tr
id=sl_svn7768_1963
><td class="source"> * Note that the radians can be greater (or less) than TWO_PI.<br></td></tr
><tr
id=sl_svn7768_1964
><td class="source"> * This is so that an arc can be drawn that crosses zero mark,<br></td></tr
><tr
id=sl_svn7768_1965
><td class="source"> * and the user will still collect $200.<br></td></tr
><tr
id=sl_svn7768_1966
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1967
><td class="source"> protected void arcImpl(float x, float y, float w, float h,<br></td></tr
><tr
id=sl_svn7768_1968
><td class="source"> float start, float stop) {<br></td></tr
><tr
id=sl_svn7768_1969
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1970
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1971
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1972
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1973
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_1974
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1975
><td class="source"> // BOX<br></td></tr
><tr
id=sl_svn7768_1976
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1977
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1978
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1979
><td class="source"> * @param size dimension of the box in all dimensions, creates a cube<br></td></tr
><tr
id=sl_svn7768_1980
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1981
><td class="source"> public void box(float size) {<br></td></tr
><tr
id=sl_svn7768_1982
><td class="source"> box(size, size, size);<br></td></tr
><tr
id=sl_svn7768_1983
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_1984
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1985
><td class="source"><br></td></tr
><tr
id=sl_svn7768_1986
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_1987
><td class="source"> * A box is an extruded rectangle. A box with equal dimension<br></td></tr
><tr
id=sl_svn7768_1988
><td class="source"> * on all sides is a cube.<br></td></tr
><tr
id=sl_svn7768_1989
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1990
><td class="source"> * @webref shape:3d_primitives<br></td></tr
><tr
id=sl_svn7768_1991
><td class="source"> * @param w dimension of the box in the x-dimension<br></td></tr
><tr
id=sl_svn7768_1992
><td class="source"> * @param h dimension of the box in the y-dimension<br></td></tr
><tr
id=sl_svn7768_1993
><td class="source"> * @param d dimension of the box in the z-dimension<br></td></tr
><tr
id=sl_svn7768_1994
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_1995
><td class="source"> * @see PApplet#sphere(float)<br></td></tr
><tr
id=sl_svn7768_1996
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_1997
><td class="source"> public void box(float w, float h, float d) {<br></td></tr
><tr
id=sl_svn7768_1998
><td class="source"> float x1 = -w/2f; float x2 = w/2f;<br></td></tr
><tr
id=sl_svn7768_1999
><td class="source"> float y1 = -h/2f; float y2 = h/2f;<br></td></tr
><tr
id=sl_svn7768_2000
><td class="source"> float z1 = -d/2f; float z2 = d/2f;<br></td></tr
><tr
id=sl_svn7768_2001
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2002
><td class="source"> // TODO not the least bit efficient, it even redraws lines<br></td></tr
><tr
id=sl_svn7768_2003
><td class="source"> // along the vertices. ugly ugly ugly!<br></td></tr
><tr
id=sl_svn7768_2004
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2005
><td class="source"> beginShape(QUADS);<br></td></tr
><tr
id=sl_svn7768_2006
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2007
><td class="source"> // front<br></td></tr
><tr
id=sl_svn7768_2008
><td class="source"> normal(0, 0, 1);<br></td></tr
><tr
id=sl_svn7768_2009
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2010
><td class="source"> vertex(x2, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2011
><td class="source"> vertex(x2, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2012
><td class="source"> vertex(x1, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2013
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2014
><td class="source"> // right<br></td></tr
><tr
id=sl_svn7768_2015
><td class="source"> normal(1, 0, 0);<br></td></tr
><tr
id=sl_svn7768_2016
><td class="source"> vertex(x2, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2017
><td class="source"> vertex(x2, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2018
><td class="source"> vertex(x2, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2019
><td class="source"> vertex(x2, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2020
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2021
><td class="source"> // back<br></td></tr
><tr
id=sl_svn7768_2022
><td class="source"> normal(0, 0, -1);<br></td></tr
><tr
id=sl_svn7768_2023
><td class="source"> vertex(x2, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2024
><td class="source"> vertex(x1, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2025
><td class="source"> vertex(x1, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2026
><td class="source"> vertex(x2, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2027
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2028
><td class="source"> // left<br></td></tr
><tr
id=sl_svn7768_2029
><td class="source"> normal(-1, 0, 0);<br></td></tr
><tr
id=sl_svn7768_2030
><td class="source"> vertex(x1, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2031
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2032
><td class="source"> vertex(x1, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2033
><td class="source"> vertex(x1, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2034
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2035
><td class="source"> // top<br></td></tr
><tr
id=sl_svn7768_2036
><td class="source"> normal(0, 1, 0);<br></td></tr
><tr
id=sl_svn7768_2037
><td class="source"> vertex(x1, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2038
><td class="source"> vertex(x2, y1, z2);<br></td></tr
><tr
id=sl_svn7768_2039
><td class="source"> vertex(x2, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2040
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2041
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2042
><td class="source"> // bottom<br></td></tr
><tr
id=sl_svn7768_2043
><td class="source"> normal(0, -1, 0);<br></td></tr
><tr
id=sl_svn7768_2044
><td class="source"> vertex(x1, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2045
><td class="source"> vertex(x2, y2, z1);<br></td></tr
><tr
id=sl_svn7768_2046
><td class="source"> vertex(x2, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2047
><td class="source"> vertex(x1, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2048
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2049
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2050
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2051
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2052
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2053
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2054
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2055
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2056
><td class="source"> // SPHERE<br></td></tr
><tr
id=sl_svn7768_2057
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2058
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2059
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2060
><td class="source"> * @param res number of segments (minimum 3) used per full circle revolution<br></td></tr
><tr
id=sl_svn7768_2061
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2062
><td class="source"> public void sphereDetail(int res) {<br></td></tr
><tr
id=sl_svn7768_2063
><td class="source"> sphereDetail(res, res);<br></td></tr
><tr
id=sl_svn7768_2064
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2065
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2066
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2067
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2068
><td class="source"> * Controls the detail used to render a sphere by adjusting the number of<br></td></tr
><tr
id=sl_svn7768_2069
><td class="source"> * vertices of the sphere mesh. The default resolution is 30, which creates<br></td></tr
><tr
id=sl_svn7768_2070
><td class="source"> * a fairly detailed sphere definition with vertices every 360/30 = 12<br></td></tr
><tr
id=sl_svn7768_2071
><td class="source"> * degrees. If you&#39;re going to render a great number of spheres per frame,<br></td></tr
><tr
id=sl_svn7768_2072
><td class="source"> * it is advised to reduce the level of detail using this function.<br></td></tr
><tr
id=sl_svn7768_2073
><td class="source"> * The setting stays active until &lt;b&gt;sphereDetail()&lt;/b&gt; is called again with<br></td></tr
><tr
id=sl_svn7768_2074
><td class="source"> * a new parameter and so should &lt;i&gt;not&lt;/i&gt; be called prior to every<br></td></tr
><tr
id=sl_svn7768_2075
><td class="source"> * &lt;b&gt;sphere()&lt;/b&gt; statement, unless you wish to render spheres with<br></td></tr
><tr
id=sl_svn7768_2076
><td class="source"> * different settings, e.g. using less detail for smaller spheres or ones<br></td></tr
><tr
id=sl_svn7768_2077
><td class="source"> * further away from the camera. To control the detail of the horizontal<br></td></tr
><tr
id=sl_svn7768_2078
><td class="source"> * and vertical resolution independently, use the version of the functions<br></td></tr
><tr
id=sl_svn7768_2079
><td class="source"> * with two parameters.<br></td></tr
><tr
id=sl_svn7768_2080
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2081
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2082
><td class="source"> * Code for sphereDetail() submitted by toxi [031031].<br></td></tr
><tr
id=sl_svn7768_2083
><td class="source"> * Code for enhanced u/v version from davbol [080801].<br></td></tr
><tr
id=sl_svn7768_2084
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2085
><td class="source"> * @webref shape:3d_primitives<br></td></tr
><tr
id=sl_svn7768_2086
><td class="source"> * @param ures number of segments used horizontally (longitudinally)<br></td></tr
><tr
id=sl_svn7768_2087
><td class="source"> * per full circle revolution<br></td></tr
><tr
id=sl_svn7768_2088
><td class="source"> * @param vres number of segments used vertically (latitudinally)<br></td></tr
><tr
id=sl_svn7768_2089
><td class="source"> * from top to bottom<br></td></tr
><tr
id=sl_svn7768_2090
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2091
><td class="source"> * @see PGraphics#sphere(float)<br></td></tr
><tr
id=sl_svn7768_2092
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2093
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2094
><td class="source"> * Set the detail level for approximating a sphere. The ures and vres params<br></td></tr
><tr
id=sl_svn7768_2095
><td class="source"> * control the horizontal and vertical resolution.<br></td></tr
><tr
id=sl_svn7768_2096
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2097
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2098
><td class="source"> public void sphereDetail(int ures, int vres) {<br></td></tr
><tr
id=sl_svn7768_2099
><td class="source"> if (ures &lt; 3) ures = 3; // force a minimum res<br></td></tr
><tr
id=sl_svn7768_2100
><td class="source"> if (vres &lt; 2) vres = 2; // force a minimum res<br></td></tr
><tr
id=sl_svn7768_2101
><td class="source"> if ((ures == sphereDetailU) &amp;&amp; (vres == sphereDetailV)) return;<br></td></tr
><tr
id=sl_svn7768_2102
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2103
><td class="source"> float delta = (float)SINCOS_LENGTH/ures;<br></td></tr
><tr
id=sl_svn7768_2104
><td class="source"> float[] cx = new float[ures];<br></td></tr
><tr
id=sl_svn7768_2105
><td class="source"> float[] cz = new float[ures];<br></td></tr
><tr
id=sl_svn7768_2106
><td class="source"> // calc unit circle in XZ plane<br></td></tr
><tr
id=sl_svn7768_2107
><td class="source"> for (int i = 0; i &lt; ures; i++) {<br></td></tr
><tr
id=sl_svn7768_2108
><td class="source"> cx[i] = cosLUT[(int) (i*delta) % SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_2109
><td class="source"> cz[i] = sinLUT[(int) (i*delta) % SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_2110
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2111
><td class="source"> // computing vertexlist<br></td></tr
><tr
id=sl_svn7768_2112
><td class="source"> // vertexlist starts at south pole<br></td></tr
><tr
id=sl_svn7768_2113
><td class="source"> int vertCount = ures * (vres-1) + 2;<br></td></tr
><tr
id=sl_svn7768_2114
><td class="source"> int currVert = 0;<br></td></tr
><tr
id=sl_svn7768_2115
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2116
><td class="source"> // re-init arrays to store vertices<br></td></tr
><tr
id=sl_svn7768_2117
><td class="source"> sphereX = new float[vertCount];<br></td></tr
><tr
id=sl_svn7768_2118
><td class="source"> sphereY = new float[vertCount];<br></td></tr
><tr
id=sl_svn7768_2119
><td class="source"> sphereZ = new float[vertCount];<br></td></tr
><tr
id=sl_svn7768_2120
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2121
><td class="source"> float angle_step = (SINCOS_LENGTH*0.5f)/vres;<br></td></tr
><tr
id=sl_svn7768_2122
><td class="source"> float angle = angle_step;<br></td></tr
><tr
id=sl_svn7768_2123
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2124
><td class="source"> // step along Y axis<br></td></tr
><tr
id=sl_svn7768_2125
><td class="source"> for (int i = 1; i &lt; vres; i++) {<br></td></tr
><tr
id=sl_svn7768_2126
><td class="source"> float curradius = sinLUT[(int) angle % SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_2127
><td class="source"> float currY = -cosLUT[(int) angle % SINCOS_LENGTH];<br></td></tr
><tr
id=sl_svn7768_2128
><td class="source"> for (int j = 0; j &lt; ures; j++) {<br></td></tr
><tr
id=sl_svn7768_2129
><td class="source"> sphereX[currVert] = cx[j] * curradius;<br></td></tr
><tr
id=sl_svn7768_2130
><td class="source"> sphereY[currVert] = currY;<br></td></tr
><tr
id=sl_svn7768_2131
><td class="source"> sphereZ[currVert++] = cz[j] * curradius;<br></td></tr
><tr
id=sl_svn7768_2132
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2133
><td class="source"> angle += angle_step;<br></td></tr
><tr
id=sl_svn7768_2134
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2135
><td class="source"> sphereDetailU = ures;<br></td></tr
><tr
id=sl_svn7768_2136
><td class="source"> sphereDetailV = vres;<br></td></tr
><tr
id=sl_svn7768_2137
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2138
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2139
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2140
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2141
><td class="source"> * Draw a sphere with radius r centered at coordinate 0, 0, 0.<br></td></tr
><tr
id=sl_svn7768_2142
><td class="source"> * A sphere is a hollow ball made from tessellated triangles.<br></td></tr
><tr
id=sl_svn7768_2143
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2144
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2145
><td class="source"> * Implementation notes:<br></td></tr
><tr
id=sl_svn7768_2146
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2147
><td class="source"> * cache all the points of the sphere in a static array<br></td></tr
><tr
id=sl_svn7768_2148
><td class="source"> * top and bottom are just a bunch of triangles that land<br></td></tr
><tr
id=sl_svn7768_2149
><td class="source"> * in the center point<br></td></tr
><tr
id=sl_svn7768_2150
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2151
><td class="source"> * sphere is a series of concentric circles who radii vary<br></td></tr
><tr
id=sl_svn7768_2152
><td class="source"> * along the shape, based on, er.. cos or something<br></td></tr
><tr
id=sl_svn7768_2153
><td class="source"> * &lt;PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2154
><td class="source"> * [toxi 031031] new sphere code. removed all multiplies with<br></td></tr
><tr
id=sl_svn7768_2155
><td class="source"> * radius, as scale() will take care of that anyway<br></td></tr
><tr
id=sl_svn7768_2156
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2157
><td class="source"> * [toxi 031223] updated sphere code (removed modulos)<br></td></tr
><tr
id=sl_svn7768_2158
><td class="source"> * and introduced sphereAt(x,y,z,r)<br></td></tr
><tr
id=sl_svn7768_2159
><td class="source"> * to avoid additional translate()&#39;s on the user/sketch side<br></td></tr
><tr
id=sl_svn7768_2160
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2161
><td class="source"> * [davbol 080801] now using separate sphereDetailU/V<br></td></tr
><tr
id=sl_svn7768_2162
><td class="source"> * &lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2163
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2164
><td class="source"> * @webref shape:3d_primitives<br></td></tr
><tr
id=sl_svn7768_2165
><td class="source"> * @param r the radius of the sphere<br></td></tr
><tr
id=sl_svn7768_2166
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2167
><td class="source"> public void sphere(float r) {<br></td></tr
><tr
id=sl_svn7768_2168
><td class="source"> if ((sphereDetailU &lt; 3) || (sphereDetailV &lt; 2)) {<br></td></tr
><tr
id=sl_svn7768_2169
><td class="source"> sphereDetail(30);<br></td></tr
><tr
id=sl_svn7768_2170
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2171
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2172
><td class="source"> edge(false);<br></td></tr
><tr
id=sl_svn7768_2173
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2174
><td class="source"> // 1st ring from south pole<br></td></tr
><tr
id=sl_svn7768_2175
><td class="source"> beginShape(TRIANGLE_STRIP);<br></td></tr
><tr
id=sl_svn7768_2176
><td class="source"> for (int i = 0; i &lt; sphereDetailU; i++) {<br></td></tr
><tr
id=sl_svn7768_2177
><td class="source"> normal(0, -1, 0);<br></td></tr
><tr
id=sl_svn7768_2178
><td class="source"> vertex(0, -r, 0);<br></td></tr
><tr
id=sl_svn7768_2179
><td class="source"> normal(sphereX[i], sphereY[i], sphereZ[i]);<br></td></tr
><tr
id=sl_svn7768_2180
><td class="source"> vertex(r * sphereX[i], r *sphereY[i], r * sphereZ[i]);<br></td></tr
><tr
id=sl_svn7768_2181
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2182
><td class="source"> //normal(0, -1, 0);<br></td></tr
><tr
id=sl_svn7768_2183
><td class="source"> vertex(0, -1, 0);<br></td></tr
><tr
id=sl_svn7768_2184
><td class="source"> normal(sphereX[0], sphereY[0], sphereZ[0]);<br></td></tr
><tr
id=sl_svn7768_2185
><td class="source"> vertex(r * sphereX[0], r * sphereY[0], r * sphereZ[0]);<br></td></tr
><tr
id=sl_svn7768_2186
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2187
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2188
><td class="source"> int v1,v11,v2;<br></td></tr
><tr
id=sl_svn7768_2189
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2190
><td class="source"> // middle rings<br></td></tr
><tr
id=sl_svn7768_2191
><td class="source"> int voff = 0;<br></td></tr
><tr
id=sl_svn7768_2192
><td class="source"> for (int i = 2; i &lt; sphereDetailV; i++) {<br></td></tr
><tr
id=sl_svn7768_2193
><td class="source"> v1 = v11 = voff;<br></td></tr
><tr
id=sl_svn7768_2194
><td class="source"> voff += sphereDetailU;<br></td></tr
><tr
id=sl_svn7768_2195
><td class="source"> v2 = voff;<br></td></tr
><tr
id=sl_svn7768_2196
><td class="source"> beginShape(TRIANGLE_STRIP);<br></td></tr
><tr
id=sl_svn7768_2197
><td class="source"> for (int j = 0; j &lt; sphereDetailU; j++) {<br></td></tr
><tr
id=sl_svn7768_2198
><td class="source"> normal(sphereX[v1], sphereY[v1], sphereZ[v1]);<br></td></tr
><tr
id=sl_svn7768_2199
><td class="source"> vertex(r * sphereX[v1], r * sphereY[v1], r * sphereZ[v1++]);<br></td></tr
><tr
id=sl_svn7768_2200
><td class="source"> normal(sphereX[v2], sphereY[v2], sphereZ[v2]);<br></td></tr
><tr
id=sl_svn7768_2201
><td class="source"> vertex(r * sphereX[v2], r * sphereY[v2], r * sphereZ[v2++]);<br></td></tr
><tr
id=sl_svn7768_2202
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2203
><td class="source"> // close each ring<br></td></tr
><tr
id=sl_svn7768_2204
><td class="source"> v1 = v11;<br></td></tr
><tr
id=sl_svn7768_2205
><td class="source"> v2 = voff;<br></td></tr
><tr
id=sl_svn7768_2206
><td class="source"> normal(sphereX[v1], sphereY[v1], sphereZ[v1]);<br></td></tr
><tr
id=sl_svn7768_2207
><td class="source"> vertex(r * sphereX[v1], r * sphereY[v1], sphereZ[v1]);<br></td></tr
><tr
id=sl_svn7768_2208
><td class="source"> normal(sphereX[v2], sphereY[v2], sphereZ[v2]);<br></td></tr
><tr
id=sl_svn7768_2209
><td class="source"> vertex(r * sphereX[v2], r * sphereY[v2], r * sphereZ[v2]);<br></td></tr
><tr
id=sl_svn7768_2210
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2211
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2212
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2213
><td class="source"> // add the northern cap<br></td></tr
><tr
id=sl_svn7768_2214
><td class="source"> beginShape(TRIANGLE_STRIP);<br></td></tr
><tr
id=sl_svn7768_2215
><td class="source"> for (int i = 0; i &lt; sphereDetailU; i++) {<br></td></tr
><tr
id=sl_svn7768_2216
><td class="source"> v2 = voff + i;<br></td></tr
><tr
id=sl_svn7768_2217
><td class="source"> normal(sphereX[v2], sphereY[v2], sphereZ[v2]);<br></td></tr
><tr
id=sl_svn7768_2218
><td class="source"> vertex(r * sphereX[v2], r * sphereY[v2], r * sphereZ[v2]);<br></td></tr
><tr
id=sl_svn7768_2219
><td class="source"> normal(0, 1, 0);<br></td></tr
><tr
id=sl_svn7768_2220
><td class="source"> vertex(0, r, 0);<br></td></tr
><tr
id=sl_svn7768_2221
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2222
><td class="source"> normal(sphereX[voff], sphereY[voff], sphereZ[voff]);<br></td></tr
><tr
id=sl_svn7768_2223
><td class="source"> vertex(r * sphereX[voff], r * sphereY[voff], r * sphereZ[voff]);<br></td></tr
><tr
id=sl_svn7768_2224
><td class="source"> normal(0, 1, 0);<br></td></tr
><tr
id=sl_svn7768_2225
><td class="source"> vertex(0, r, 0);<br></td></tr
><tr
id=sl_svn7768_2226
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2227
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2228
><td class="source"> edge(true);<br></td></tr
><tr
id=sl_svn7768_2229
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2230
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2231
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2232
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2233
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2234
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2235
><td class="source"> // BEZIER<br></td></tr
><tr
id=sl_svn7768_2236
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2237
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2238
><td class="source"> * Evaluates the Bezier at point t for points a, b, c, d. The parameter t varies between 0 and 1, a and d are points on the curve, and b and c are the control points. This can be done once with the x coordinates and a second time with the y coordinates to get the location of a bezier curve at t.<br></td></tr
><tr
id=sl_svn7768_2239
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2240
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2241
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2242
><td class="source"> * Evalutes quadratic bezier at point t for points a, b, c, d.<br></td></tr
><tr
id=sl_svn7768_2243
><td class="source"> * The parameter t varies between 0 and 1. The a and d parameters are the<br></td></tr
><tr
id=sl_svn7768_2244
><td class="source"> * on-curve points, b and c are the control points. To make a two-dimensional<br></td></tr
><tr
id=sl_svn7768_2245
><td class="source"> * curve, call this function once with the x coordinates and a second time<br></td></tr
><tr
id=sl_svn7768_2246
><td class="source"> * with the y coordinates to get the location of a bezier curve at t.<br></td></tr
><tr
id=sl_svn7768_2247
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2248
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2249
><td class="source"> * For instance, to convert the following example:&lt;PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2250
><td class="source"> * stroke(255, 102, 0);<br></td></tr
><tr
id=sl_svn7768_2251
><td class="source"> * line(85, 20, 10, 10);<br></td></tr
><tr
id=sl_svn7768_2252
><td class="source"> * line(90, 90, 15, 80);<br></td></tr
><tr
id=sl_svn7768_2253
><td class="source"> * stroke(0, 0, 0);<br></td></tr
><tr
id=sl_svn7768_2254
><td class="source"> * bezier(85, 20, 10, 10, 90, 90, 15, 80);<br></td></tr
><tr
id=sl_svn7768_2255
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2256
><td class="source"> * // draw it in gray, using 10 steps instead of the default 20<br></td></tr
><tr
id=sl_svn7768_2257
><td class="source"> * // this is a slower way to do it, but useful if you need<br></td></tr
><tr
id=sl_svn7768_2258
><td class="source"> * // to do things with the coordinates at each step<br></td></tr
><tr
id=sl_svn7768_2259
><td class="source"> * stroke(128);<br></td></tr
><tr
id=sl_svn7768_2260
><td class="source"> * beginShape(LINE_STRIP);<br></td></tr
><tr
id=sl_svn7768_2261
><td class="source"> * for (int i = 0; i &lt;= 10; i++) {<br></td></tr
><tr
id=sl_svn7768_2262
><td class="source"> * float t = i / 10.0f;<br></td></tr
><tr
id=sl_svn7768_2263
><td class="source"> * float x = bezierPoint(85, 10, 90, 15, t);<br></td></tr
><tr
id=sl_svn7768_2264
><td class="source"> * float y = bezierPoint(20, 10, 90, 80, t);<br></td></tr
><tr
id=sl_svn7768_2265
><td class="source"> * vertex(x, y);<br></td></tr
><tr
id=sl_svn7768_2266
><td class="source"> * }<br></td></tr
><tr
id=sl_svn7768_2267
><td class="source"> * endShape();&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2268
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2269
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2270
><td class="source"> * @param a coordinate of first point on the curve<br></td></tr
><tr
id=sl_svn7768_2271
><td class="source"> * @param b coordinate of first control point<br></td></tr
><tr
id=sl_svn7768_2272
><td class="source"> * @param c coordinate of second control point<br></td></tr
><tr
id=sl_svn7768_2273
><td class="source"> * @param d coordinate of second point on the curve<br></td></tr
><tr
id=sl_svn7768_2274
><td class="source"> * @param t value between 0 and 1<br></td></tr
><tr
id=sl_svn7768_2275
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2276
><td class="source"> * @see PGraphics#bezier(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2277
><td class="source"> * @see PGraphics#bezierVertex(float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2278
><td class="source"> * @see PGraphics#curvePoint(float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2279
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2280
><td class="source"> public float bezierPoint(float a, float b, float c, float d, float t) {<br></td></tr
><tr
id=sl_svn7768_2281
><td class="source"> float t1 = 1.0f - t;<br></td></tr
><tr
id=sl_svn7768_2282
><td class="source"> return a*t1*t1*t1 + 3*b*t*t1*t1 + 3*c*t*t*t1 + d*t*t*t;<br></td></tr
><tr
id=sl_svn7768_2283
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2284
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2285
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2286
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2287
><td class="source"> * Calculates the tangent of a point on a Bezier curve. There is a good<br></td></tr
><tr
id=sl_svn7768_2288
><td class="source"> * definition of &quot;tangent&quot; at Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Tangent&quot; target=&quot;new&quot;&gt;http://en.wikipedia.org/wiki/Tangent&lt;/a&gt;<br></td></tr
><tr
id=sl_svn7768_2289
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2290
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2291
><td class="source"> * Code submitted by Dave Bollinger (davol) for release 0136.<br></td></tr
><tr
id=sl_svn7768_2292
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2293
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2294
><td class="source"> * @param a coordinate of first point on the curve<br></td></tr
><tr
id=sl_svn7768_2295
><td class="source"> * @param b coordinate of first control point<br></td></tr
><tr
id=sl_svn7768_2296
><td class="source"> * @param c coordinate of second control point<br></td></tr
><tr
id=sl_svn7768_2297
><td class="source"> * @param d coordinate of second point on the curve<br></td></tr
><tr
id=sl_svn7768_2298
><td class="source"> * @param t value between 0 and 1<br></td></tr
><tr
id=sl_svn7768_2299
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2300
><td class="source"> * @see PGraphics#bezier(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2301
><td class="source"> * @see PGraphics#bezierVertex(float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2302
><td class="source"> * @see PGraphics#curvePoint(float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2303
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2304
><td class="source"> public float bezierTangent(float a, float b, float c, float d, float t) {<br></td></tr
><tr
id=sl_svn7768_2305
><td class="source"> return (3*t*t * (-a+3*b-3*c+d) +<br></td></tr
><tr
id=sl_svn7768_2306
><td class="source"> 6*t * (a-2*b+c) +<br></td></tr
><tr
id=sl_svn7768_2307
><td class="source"> 3 * (-a+b));<br></td></tr
><tr
id=sl_svn7768_2308
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2309
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2310
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2311
><td class="source"> protected void bezierInitCheck() {<br></td></tr
><tr
id=sl_svn7768_2312
><td class="source"> if (!bezierInited) {<br></td></tr
><tr
id=sl_svn7768_2313
><td class="source"> bezierInit();<br></td></tr
><tr
id=sl_svn7768_2314
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2315
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2316
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2317
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2318
><td class="source"> protected void bezierInit() {<br></td></tr
><tr
id=sl_svn7768_2319
><td class="source"> // overkill to be broken out, but better parity with the curve stuff below<br></td></tr
><tr
id=sl_svn7768_2320
><td class="source"> bezierDetail(bezierDetail);<br></td></tr
><tr
id=sl_svn7768_2321
><td class="source"> bezierInited = true;<br></td></tr
><tr
id=sl_svn7768_2322
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2323
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2324
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2325
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2326
><td class="source"> * Sets the resolution at which Beziers display. The default value is 20. This function is only useful when using the P3D or OPENGL renderer as the default (JAVA2D) renderer does not use this information.<br></td></tr
><tr
id=sl_svn7768_2327
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2328
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2329
><td class="source"> * @param detail resolution of the curves<br></td></tr
><tr
id=sl_svn7768_2330
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2331
><td class="source"> * @see PApplet#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2332
><td class="source"> * @see PApplet#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2333
><td class="source"> * @see PApplet#curveTightness(float)<br></td></tr
><tr
id=sl_svn7768_2334
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2335
><td class="source"> public void bezierDetail(int detail) {<br></td></tr
><tr
id=sl_svn7768_2336
><td class="source"> bezierDetail = detail;<br></td></tr
><tr
id=sl_svn7768_2337
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2338
><td class="source"> if (bezierDrawMatrix == null) {<br></td></tr
><tr
id=sl_svn7768_2339
><td class="source"> bezierDrawMatrix = new PMatrix3D();<br></td></tr
><tr
id=sl_svn7768_2340
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2341
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2342
><td class="source"> // setup matrix for forward differencing to speed up drawing<br></td></tr
><tr
id=sl_svn7768_2343
><td class="source"> splineForward(detail, bezierDrawMatrix);<br></td></tr
><tr
id=sl_svn7768_2344
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2345
><td class="source"> // multiply the basis and forward diff matrices together<br></td></tr
><tr
id=sl_svn7768_2346
><td class="source"> // saves much time since this needn&#39;t be done for each curve<br></td></tr
><tr
id=sl_svn7768_2347
><td class="source"> //mult_spline_matrix(bezierForwardMatrix, bezier_basis, bezierDrawMatrix, 4);<br></td></tr
><tr
id=sl_svn7768_2348
><td class="source"> //bezierDrawMatrix.set(bezierForwardMatrix);<br></td></tr
><tr
id=sl_svn7768_2349
><td class="source"> bezierDrawMatrix.apply(bezierBasisMatrix);<br></td></tr
><tr
id=sl_svn7768_2350
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2351
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2352
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2353
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2354
><td class="source"> * Draws a Bezier curve on the screen. These curves are defined by a series<br></td></tr
><tr
id=sl_svn7768_2355
><td class="source"> * of anchor and control points. The first two parameters specify the first<br></td></tr
><tr
id=sl_svn7768_2356
><td class="source"> * anchor point and the last two parameters specify the other anchor point.<br></td></tr
><tr
id=sl_svn7768_2357
><td class="source"> * The middle parameters specify the control points which define the shape<br></td></tr
><tr
id=sl_svn7768_2358
><td class="source"> * of the curve. Bezier curves were developed by French engineer Pierre<br></td></tr
><tr
id=sl_svn7768_2359
><td class="source"> * Bezier. Using the 3D version of requires rendering with P3D or OPENGL<br></td></tr
><tr
id=sl_svn7768_2360
><td class="source"> * (see the Environment reference for more information).<br></td></tr
><tr
id=sl_svn7768_2361
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2362
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2363
><td class="source"> * Draw a cubic bezier curve. The first and last points are<br></td></tr
><tr
id=sl_svn7768_2364
><td class="source"> * the on-curve points. The middle two are the &#39;control&#39; points,<br></td></tr
><tr
id=sl_svn7768_2365
><td class="source"> * or &#39;handles&#39; in an application like Illustrator.<br></td></tr
><tr
id=sl_svn7768_2366
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2367
><td class="source"> * Identical to typing:<br></td></tr
><tr
id=sl_svn7768_2368
><td class="source"> * &lt;PRE&gt;beginShape();<br></td></tr
><tr
id=sl_svn7768_2369
><td class="source"> * vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_2370
><td class="source"> * bezierVertex(x2, y2, x3, y3, x4, y4);<br></td></tr
><tr
id=sl_svn7768_2371
><td class="source"> * endShape();<br></td></tr
><tr
id=sl_svn7768_2372
><td class="source"> * &lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2373
><td class="source"> * In Postscript-speak, this would be:<br></td></tr
><tr
id=sl_svn7768_2374
><td class="source"> * &lt;PRE&gt;moveto(x1, y1);<br></td></tr
><tr
id=sl_svn7768_2375
><td class="source"> * curveto(x2, y2, x3, y3, x4, y4);&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2376
><td class="source"> * If you were to try and continue that curve like so:<br></td></tr
><tr
id=sl_svn7768_2377
><td class="source"> * &lt;PRE&gt;curveto(x5, y5, x6, y6, x7, y7);&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2378
><td class="source"> * This would be done in processing by adding these statements:<br></td></tr
><tr
id=sl_svn7768_2379
><td class="source"> * &lt;PRE&gt;bezierVertex(x5, y5, x6, y6, x7, y7)<br></td></tr
><tr
id=sl_svn7768_2380
><td class="source"> * &lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2381
><td class="source"> * To draw a quadratic (instead of cubic) curve,<br></td></tr
><tr
id=sl_svn7768_2382
><td class="source"> * use the control point twice by doubling it:<br></td></tr
><tr
id=sl_svn7768_2383
><td class="source"> * &lt;PRE&gt;bezier(x1, y1, cx, cy, cx, cy, x2, y2);&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2384
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2385
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2386
><td class="source"> * @param x1 coordinates for the first anchor point<br></td></tr
><tr
id=sl_svn7768_2387
><td class="source"> * @param y1 coordinates for the first anchor point<br></td></tr
><tr
id=sl_svn7768_2388
><td class="source"> * @param z1 coordinates for the first anchor point<br></td></tr
><tr
id=sl_svn7768_2389
><td class="source"> * @param x2 coordinates for the first control point<br></td></tr
><tr
id=sl_svn7768_2390
><td class="source"> * @param y2 coordinates for the first control point<br></td></tr
><tr
id=sl_svn7768_2391
><td class="source"> * @param z2 coordinates for the first control point<br></td></tr
><tr
id=sl_svn7768_2392
><td class="source"> * @param x3 coordinates for the second control point<br></td></tr
><tr
id=sl_svn7768_2393
><td class="source"> * @param y3 coordinates for the second control point<br></td></tr
><tr
id=sl_svn7768_2394
><td class="source"> * @param z3 coordinates for the second control point<br></td></tr
><tr
id=sl_svn7768_2395
><td class="source"> * @param x4 coordinates for the second anchor point<br></td></tr
><tr
id=sl_svn7768_2396
><td class="source"> * @param y4 coordinates for the second anchor point<br></td></tr
><tr
id=sl_svn7768_2397
><td class="source"> * @param z4 coordinates for the second anchor point<br></td></tr
><tr
id=sl_svn7768_2398
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2399
><td class="source"> * @see PGraphics#bezierVertex(float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2400
><td class="source"> * @see PGraphics#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2401
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2402
><td class="source"> public void bezier(float x1, float y1,<br></td></tr
><tr
id=sl_svn7768_2403
><td class="source"> float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_2404
><td class="source"> float x3, float y3,<br></td></tr
><tr
id=sl_svn7768_2405
><td class="source"> float x4, float y4) {<br></td></tr
><tr
id=sl_svn7768_2406
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_2407
><td class="source"> vertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_2408
><td class="source"> bezierVertex(x2, y2, x3, y3, x4, y4);<br></td></tr
><tr
id=sl_svn7768_2409
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2410
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2411
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2412
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2413
><td class="source"> public void bezier(float x1, float y1, float z1,<br></td></tr
><tr
id=sl_svn7768_2414
><td class="source"> float x2, float y2, float z2,<br></td></tr
><tr
id=sl_svn7768_2415
><td class="source"> float x3, float y3, float z3,<br></td></tr
><tr
id=sl_svn7768_2416
><td class="source"> float x4, float y4, float z4) {<br></td></tr
><tr
id=sl_svn7768_2417
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_2418
><td class="source"> vertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2419
><td class="source"> bezierVertex(x2, y2, z2,<br></td></tr
><tr
id=sl_svn7768_2420
><td class="source"> x3, y3, z3,<br></td></tr
><tr
id=sl_svn7768_2421
><td class="source"> x4, y4, z4);<br></td></tr
><tr
id=sl_svn7768_2422
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2423
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2424
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2425
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2426
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2427
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2428
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2429
><td class="source"> // CATMULL-ROM CURVE<br></td></tr
><tr
id=sl_svn7768_2430
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2431
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2432
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2433
><td class="source"> * Evalutes the Catmull-Rom curve at point t for points a, b, c, d. The<br></td></tr
><tr
id=sl_svn7768_2434
><td class="source"> * parameter t varies between 0 and 1, a and d are points on the curve,<br></td></tr
><tr
id=sl_svn7768_2435
><td class="source"> * and b and c are the control points. This can be done once with the x<br></td></tr
><tr
id=sl_svn7768_2436
><td class="source"> * coordinates and a second time with the y coordinates to get the<br></td></tr
><tr
id=sl_svn7768_2437
><td class="source"> * location of a curve at t.<br></td></tr
><tr
id=sl_svn7768_2438
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2439
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2440
><td class="source"> * @param a coordinate of first point on the curve<br></td></tr
><tr
id=sl_svn7768_2441
><td class="source"> * @param b coordinate of second point on the curve<br></td></tr
><tr
id=sl_svn7768_2442
><td class="source"> * @param c coordinate of third point on the curve<br></td></tr
><tr
id=sl_svn7768_2443
><td class="source"> * @param d coordinate of fourth point on the curve<br></td></tr
><tr
id=sl_svn7768_2444
><td class="source"> * @param t value between 0 and 1<br></td></tr
><tr
id=sl_svn7768_2445
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2446
><td class="source"> * @see PGraphics#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2447
><td class="source"> * @see PGraphics#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2448
><td class="source"> * @see PGraphics#bezierPoint(float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2449
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2450
><td class="source"> public float curvePoint(float a, float b, float c, float d, float t) {<br></td></tr
><tr
id=sl_svn7768_2451
><td class="source"> curveInitCheck();<br></td></tr
><tr
id=sl_svn7768_2452
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2453
><td class="source"> float tt = t * t;<br></td></tr
><tr
id=sl_svn7768_2454
><td class="source"> float ttt = t * tt;<br></td></tr
><tr
id=sl_svn7768_2455
><td class="source"> PMatrix3D cb = curveBasisMatrix;<br></td></tr
><tr
id=sl_svn7768_2456
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2457
><td class="source"> // not optimized (and probably need not be)<br></td></tr
><tr
id=sl_svn7768_2458
><td class="source"> return (a * (ttt*cb.m00 + tt*cb.m10 + t*cb.m20 + cb.m30) +<br></td></tr
><tr
id=sl_svn7768_2459
><td class="source"> b * (ttt*cb.m01 + tt*cb.m11 + t*cb.m21 + cb.m31) +<br></td></tr
><tr
id=sl_svn7768_2460
><td class="source"> c * (ttt*cb.m02 + tt*cb.m12 + t*cb.m22 + cb.m32) +<br></td></tr
><tr
id=sl_svn7768_2461
><td class="source"> d * (ttt*cb.m03 + tt*cb.m13 + t*cb.m23 + cb.m33));<br></td></tr
><tr
id=sl_svn7768_2462
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2463
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2464
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2465
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2466
><td class="source"> * Calculates the tangent of a point on a Catmull-Rom curve. There is a good definition of &quot;tangent&quot; at Wikipedia: &lt;a href=&quot;http://en.wikipedia.org/wiki/Tangent&quot; target=&quot;new&quot;&gt;http://en.wikipedia.org/wiki/Tangent&lt;/a&gt;.<br></td></tr
><tr
id=sl_svn7768_2467
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2468
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2469
><td class="source"> * Code thanks to Dave Bollinger (Bug #715)<br></td></tr
><tr
id=sl_svn7768_2470
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2471
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2472
><td class="source"> * @param a coordinate of first point on the curve<br></td></tr
><tr
id=sl_svn7768_2473
><td class="source"> * @param b coordinate of first control point<br></td></tr
><tr
id=sl_svn7768_2474
><td class="source"> * @param c coordinate of second control point<br></td></tr
><tr
id=sl_svn7768_2475
><td class="source"> * @param d coordinate of second point on the curve<br></td></tr
><tr
id=sl_svn7768_2476
><td class="source"> * @param t value between 0 and 1<br></td></tr
><tr
id=sl_svn7768_2477
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2478
><td class="source"> * @see PGraphics#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2479
><td class="source"> * @see PGraphics#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2480
><td class="source"> * @see PGraphics#curvePoint(float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2481
><td class="source"> * @see PGraphics#bezierTangent(float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2482
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2483
><td class="source"> public float curveTangent(float a, float b, float c, float d, float t) {<br></td></tr
><tr
id=sl_svn7768_2484
><td class="source"> curveInitCheck();<br></td></tr
><tr
id=sl_svn7768_2485
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2486
><td class="source"> float tt3 = t * t * 3;<br></td></tr
><tr
id=sl_svn7768_2487
><td class="source"> float t2 = t * 2;<br></td></tr
><tr
id=sl_svn7768_2488
><td class="source"> PMatrix3D cb = curveBasisMatrix;<br></td></tr
><tr
id=sl_svn7768_2489
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2490
><td class="source"> // not optimized (and probably need not be)<br></td></tr
><tr
id=sl_svn7768_2491
><td class="source"> return (a * (tt3*cb.m00 + t2*cb.m10 + cb.m20) +<br></td></tr
><tr
id=sl_svn7768_2492
><td class="source"> b * (tt3*cb.m01 + t2*cb.m11 + cb.m21) +<br></td></tr
><tr
id=sl_svn7768_2493
><td class="source"> c * (tt3*cb.m02 + t2*cb.m12 + cb.m22) +<br></td></tr
><tr
id=sl_svn7768_2494
><td class="source"> d * (tt3*cb.m03 + t2*cb.m13 + cb.m23) );<br></td></tr
><tr
id=sl_svn7768_2495
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2496
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2497
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2498
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2499
><td class="source"> * Sets the resolution at which curves display. The default value is 20.<br></td></tr
><tr
id=sl_svn7768_2500
><td class="source"> * This function is only useful when using the P3D or OPENGL renderer as<br></td></tr
><tr
id=sl_svn7768_2501
><td class="source"> * the default (JAVA2D) renderer does not use this information.<br></td></tr
><tr
id=sl_svn7768_2502
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2503
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2504
><td class="source"> * @param detail resolution of the curves<br></td></tr
><tr
id=sl_svn7768_2505
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2506
><td class="source"> * @see PGraphics#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2507
><td class="source"> * @see PGraphics#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2508
><td class="source"> * @see PGraphics#curveTightness(float)<br></td></tr
><tr
id=sl_svn7768_2509
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2510
><td class="source"> public void curveDetail(int detail) {<br></td></tr
><tr
id=sl_svn7768_2511
><td class="source"> curveDetail = detail;<br></td></tr
><tr
id=sl_svn7768_2512
><td class="source"> curveInit();<br></td></tr
><tr
id=sl_svn7768_2513
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2514
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2515
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2516
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2517
><td class="source"> * Modifies the quality of forms created with &lt;b&gt;curve()&lt;/b&gt; and<br></td></tr
><tr
id=sl_svn7768_2518
><td class="source"> *&lt;b&gt;curveVertex()&lt;/b&gt;. The parameter &lt;b&gt;squishy&lt;/b&gt; determines how the<br></td></tr
><tr
id=sl_svn7768_2519
><td class="source"> * curve fits to the vertex points. The value 0.0 is the default value for<br></td></tr
><tr
id=sl_svn7768_2520
><td class="source"> * &lt;b&gt;squishy&lt;/b&gt; (this value defines the curves to be Catmull-Rom splines)<br></td></tr
><tr
id=sl_svn7768_2521
><td class="source"> * and the value 1.0 connects all the points with straight lines.<br></td></tr
><tr
id=sl_svn7768_2522
><td class="source"> * Values within the range -5.0 and 5.0 will deform the curves but<br></td></tr
><tr
id=sl_svn7768_2523
><td class="source"> * will leave them recognizable and as values increase in magnitude,<br></td></tr
><tr
id=sl_svn7768_2524
><td class="source"> * they will continue to deform.<br></td></tr
><tr
id=sl_svn7768_2525
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2526
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2527
><td class="source"> * @param tightness amount of deformation from the original vertices<br></td></tr
><tr
id=sl_svn7768_2528
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2529
><td class="source"> * @see PGraphics#curve(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2530
><td class="source"> * @see PGraphics#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2531
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2532
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2533
><td class="source"> public void curveTightness(float tightness) {<br></td></tr
><tr
id=sl_svn7768_2534
><td class="source"> curveTightness = tightness;<br></td></tr
><tr
id=sl_svn7768_2535
><td class="source"> curveInit();<br></td></tr
><tr
id=sl_svn7768_2536
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2537
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2538
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2539
><td class="source"> protected void curveInitCheck() {<br></td></tr
><tr
id=sl_svn7768_2540
><td class="source"> if (!curveInited) {<br></td></tr
><tr
id=sl_svn7768_2541
><td class="source"> curveInit();<br></td></tr
><tr
id=sl_svn7768_2542
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2543
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2544
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2545
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2546
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2547
><td class="source"> * Set the number of segments to use when drawing a Catmull-Rom<br></td></tr
><tr
id=sl_svn7768_2548
><td class="source"> * curve, and setting the s parameter, which defines how tightly<br></td></tr
><tr
id=sl_svn7768_2549
><td class="source"> * the curve fits to each vertex. Catmull-Rom curves are actually<br></td></tr
><tr
id=sl_svn7768_2550
><td class="source"> * a subset of this curve type where the s is set to zero.<br></td></tr
><tr
id=sl_svn7768_2551
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2552
><td class="source"> * (This function is not optimized, since it&#39;s not expected to<br></td></tr
><tr
id=sl_svn7768_2553
><td class="source"> * be called all that often. there are many juicy and obvious<br></td></tr
><tr
id=sl_svn7768_2554
><td class="source"> * opimizations in here, but it&#39;s probably better to keep the<br></td></tr
><tr
id=sl_svn7768_2555
><td class="source"> * code more readable)<br></td></tr
><tr
id=sl_svn7768_2556
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2557
><td class="source"> protected void curveInit() {<br></td></tr
><tr
id=sl_svn7768_2558
><td class="source"> // allocate only if/when used to save startup time<br></td></tr
><tr
id=sl_svn7768_2559
><td class="source"> if (curveDrawMatrix == null) {<br></td></tr
><tr
id=sl_svn7768_2560
><td class="source"> curveBasisMatrix = new PMatrix3D();<br></td></tr
><tr
id=sl_svn7768_2561
><td class="source"> curveDrawMatrix = new PMatrix3D();<br></td></tr
><tr
id=sl_svn7768_2562
><td class="source"> curveInited = true;<br></td></tr
><tr
id=sl_svn7768_2563
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2564
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2565
><td class="source"> float s = curveTightness;<br></td></tr
><tr
id=sl_svn7768_2566
><td class="source"> curveBasisMatrix.set((s-1)/2f, (s+3)/2f, (-3-s)/2f, (1-s)/2f,<br></td></tr
><tr
id=sl_svn7768_2567
><td class="source"> (1-s), (-5-s)/2f, (s+2), (s-1)/2f,<br></td></tr
><tr
id=sl_svn7768_2568
><td class="source"> (s-1)/2f, 0, (1-s)/2f, 0,<br></td></tr
><tr
id=sl_svn7768_2569
><td class="source"> 0, 1, 0, 0);<br></td></tr
><tr
id=sl_svn7768_2570
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2571
><td class="source"> //setup_spline_forward(segments, curveForwardMatrix);<br></td></tr
><tr
id=sl_svn7768_2572
><td class="source"> splineForward(curveDetail, curveDrawMatrix);<br></td></tr
><tr
id=sl_svn7768_2573
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2574
><td class="source"> if (bezierBasisInverse == null) {<br></td></tr
><tr
id=sl_svn7768_2575
><td class="source"> bezierBasisInverse = bezierBasisMatrix.get();<br></td></tr
><tr
id=sl_svn7768_2576
><td class="source"> bezierBasisInverse.invert();<br></td></tr
><tr
id=sl_svn7768_2577
><td class="source"> curveToBezierMatrix = new PMatrix3D();<br></td></tr
><tr
id=sl_svn7768_2578
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2579
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2580
><td class="source"> // TODO only needed for PGraphicsJava2D? if so, move it there<br></td></tr
><tr
id=sl_svn7768_2581
><td class="source"> // actually, it&#39;s generally useful for other renderers, so keep it<br></td></tr
><tr
id=sl_svn7768_2582
><td class="source"> // or hide the implementation elsewhere.<br></td></tr
><tr
id=sl_svn7768_2583
><td class="source"> curveToBezierMatrix.set(curveBasisMatrix);<br></td></tr
><tr
id=sl_svn7768_2584
><td class="source"> curveToBezierMatrix.preApply(bezierBasisInverse);<br></td></tr
><tr
id=sl_svn7768_2585
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2586
><td class="source"> // multiply the basis and forward diff matrices together<br></td></tr
><tr
id=sl_svn7768_2587
><td class="source"> // saves much time since this needn&#39;t be done for each curve<br></td></tr
><tr
id=sl_svn7768_2588
><td class="source"> curveDrawMatrix.apply(curveBasisMatrix);<br></td></tr
><tr
id=sl_svn7768_2589
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2590
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2591
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2592
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2593
><td class="source"> * Draws a curved line on the screen. The first and second parameters<br></td></tr
><tr
id=sl_svn7768_2594
><td class="source"> * specify the beginning control point and the last two parameters specify<br></td></tr
><tr
id=sl_svn7768_2595
><td class="source"> * the ending control point. The middle parameters specify the start and<br></td></tr
><tr
id=sl_svn7768_2596
><td class="source"> * stop of the curve. Longer curves can be created by putting a series of<br></td></tr
><tr
id=sl_svn7768_2597
><td class="source"> * &lt;b&gt;curve()&lt;/b&gt; functions together or using &lt;b&gt;curveVertex()&lt;/b&gt;.<br></td></tr
><tr
id=sl_svn7768_2598
><td class="source"> * An additional function called &lt;b&gt;curveTightness()&lt;/b&gt; provides control<br></td></tr
><tr
id=sl_svn7768_2599
><td class="source"> * for the visual quality of the curve. The &lt;b&gt;curve()&lt;/b&gt; function is an<br></td></tr
><tr
id=sl_svn7768_2600
><td class="source"> * implementation of Catmull-Rom splines. Using the 3D version of requires<br></td></tr
><tr
id=sl_svn7768_2601
><td class="source"> * rendering with P3D or OPENGL (see the Environment reference for more<br></td></tr
><tr
id=sl_svn7768_2602
><td class="source"> * information).<br></td></tr
><tr
id=sl_svn7768_2603
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2604
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2605
><td class="source"> * As of revision 0070, this function no longer doubles the first<br></td></tr
><tr
id=sl_svn7768_2606
><td class="source"> * and last points. The curves are a bit more boring, but it&#39;s more<br></td></tr
><tr
id=sl_svn7768_2607
><td class="source"> * mathematically correct, and properly mirrored in curvePoint().<br></td></tr
><tr
id=sl_svn7768_2608
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_2609
><td class="source"> * Identical to typing out:&lt;PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2610
><td class="source"> * beginShape();<br></td></tr
><tr
id=sl_svn7768_2611
><td class="source"> * curveVertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_2612
><td class="source"> * curveVertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_2613
><td class="source"> * curveVertex(x3, y3);<br></td></tr
><tr
id=sl_svn7768_2614
><td class="source"> * curveVertex(x4, y4);<br></td></tr
><tr
id=sl_svn7768_2615
><td class="source"> * endShape();<br></td></tr
><tr
id=sl_svn7768_2616
><td class="source"> * &lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_2617
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2618
><td class="source"> * @webref shape:curves<br></td></tr
><tr
id=sl_svn7768_2619
><td class="source"> * @param x1 coordinates for the beginning control point<br></td></tr
><tr
id=sl_svn7768_2620
><td class="source"> * @param y1 coordinates for the beginning control point<br></td></tr
><tr
id=sl_svn7768_2621
><td class="source"> * @param z1 coordinates for the beginning control point<br></td></tr
><tr
id=sl_svn7768_2622
><td class="source"> * @param x2 coordinates for the first point<br></td></tr
><tr
id=sl_svn7768_2623
><td class="source"> * @param y2 coordinates for the first point<br></td></tr
><tr
id=sl_svn7768_2624
><td class="source"> * @param z2 coordinates for the first point<br></td></tr
><tr
id=sl_svn7768_2625
><td class="source"> * @param x3 coordinates for the second point<br></td></tr
><tr
id=sl_svn7768_2626
><td class="source"> * @param y3 coordinates for the second point<br></td></tr
><tr
id=sl_svn7768_2627
><td class="source"> * @param z3 coordinates for the second point<br></td></tr
><tr
id=sl_svn7768_2628
><td class="source"> * @param x4 coordinates for the ending control point<br></td></tr
><tr
id=sl_svn7768_2629
><td class="source"> * @param y4 coordinates for the ending control point<br></td></tr
><tr
id=sl_svn7768_2630
><td class="source"> * @param z4 coordinates for the ending control point<br></td></tr
><tr
id=sl_svn7768_2631
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2632
><td class="source"> * @see PGraphics#curveVertex(float, float)<br></td></tr
><tr
id=sl_svn7768_2633
><td class="source"> * @see PGraphics#curveTightness(float)<br></td></tr
><tr
id=sl_svn7768_2634
><td class="source"> * @see PGraphics#bezier(float, float, float, float, float, float, float, float, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2635
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2636
><td class="source"> public void curve(float x1, float y1,<br></td></tr
><tr
id=sl_svn7768_2637
><td class="source"> float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_2638
><td class="source"> float x3, float y3,<br></td></tr
><tr
id=sl_svn7768_2639
><td class="source"> float x4, float y4) {<br></td></tr
><tr
id=sl_svn7768_2640
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_2641
><td class="source"> curveVertex(x1, y1);<br></td></tr
><tr
id=sl_svn7768_2642
><td class="source"> curveVertex(x2, y2);<br></td></tr
><tr
id=sl_svn7768_2643
><td class="source"> curveVertex(x3, y3);<br></td></tr
><tr
id=sl_svn7768_2644
><td class="source"> curveVertex(x4, y4);<br></td></tr
><tr
id=sl_svn7768_2645
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2646
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2647
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2648
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2649
><td class="source"> public void curve(float x1, float y1, float z1,<br></td></tr
><tr
id=sl_svn7768_2650
><td class="source"> float x2, float y2, float z2,<br></td></tr
><tr
id=sl_svn7768_2651
><td class="source"> float x3, float y3, float z3,<br></td></tr
><tr
id=sl_svn7768_2652
><td class="source"> float x4, float y4, float z4) {<br></td></tr
><tr
id=sl_svn7768_2653
><td class="source"> beginShape();<br></td></tr
><tr
id=sl_svn7768_2654
><td class="source"> curveVertex(x1, y1, z1);<br></td></tr
><tr
id=sl_svn7768_2655
><td class="source"> curveVertex(x2, y2, z2);<br></td></tr
><tr
id=sl_svn7768_2656
><td class="source"> curveVertex(x3, y3, z3);<br></td></tr
><tr
id=sl_svn7768_2657
><td class="source"> curveVertex(x4, y4, z4);<br></td></tr
><tr
id=sl_svn7768_2658
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2659
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2660
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2661
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2662
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2663
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2664
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2665
><td class="source"> // SPLINE UTILITY FUNCTIONS (used by both Bezier and Catmull-Rom)<br></td></tr
><tr
id=sl_svn7768_2666
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2667
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2668
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2669
><td class="source"> * Setup forward-differencing matrix to be used for speedy<br></td></tr
><tr
id=sl_svn7768_2670
><td class="source"> * curve rendering. It&#39;s based on using a specific number<br></td></tr
><tr
id=sl_svn7768_2671
><td class="source"> * of curve segments and just doing incremental adds for each<br></td></tr
><tr
id=sl_svn7768_2672
><td class="source"> * vertex of the segment, rather than running the mathematically<br></td></tr
><tr
id=sl_svn7768_2673
><td class="source"> * expensive cubic equation.<br></td></tr
><tr
id=sl_svn7768_2674
><td class="source"> * @param segments number of curve segments to use when drawing<br></td></tr
><tr
id=sl_svn7768_2675
><td class="source"> * @param matrix target object for the new matrix<br></td></tr
><tr
id=sl_svn7768_2676
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2677
><td class="source"> protected void splineForward(int segments, PMatrix3D matrix) {<br></td></tr
><tr
id=sl_svn7768_2678
><td class="source"> float f = 1.0f / segments;<br></td></tr
><tr
id=sl_svn7768_2679
><td class="source"> float ff = f * f;<br></td></tr
><tr
id=sl_svn7768_2680
><td class="source"> float fff = ff * f;<br></td></tr
><tr
id=sl_svn7768_2681
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2682
><td class="source"> matrix.set(0, 0, 0, 1,<br></td></tr
><tr
id=sl_svn7768_2683
><td class="source"> fff, ff, f, 0,<br></td></tr
><tr
id=sl_svn7768_2684
><td class="source"> 6*fff, 2*ff, 0, 0,<br></td></tr
><tr
id=sl_svn7768_2685
><td class="source"> 6*fff, 0, 0, 0);<br></td></tr
><tr
id=sl_svn7768_2686
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2687
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2688
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2689
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2690
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2691
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2692
><td class="source"> // SMOOTHING<br></td></tr
><tr
id=sl_svn7768_2693
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2694
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2695
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2696
><td class="source"> * If true in PImage, use bilinear interpolation for copy()<br></td></tr
><tr
id=sl_svn7768_2697
><td class="source"> * operations. When inherited by PGraphics, also controls shapes.<br></td></tr
><tr
id=sl_svn7768_2698
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2699
><td class="source"> public void smooth() {<br></td></tr
><tr
id=sl_svn7768_2700
><td class="source"> smooth = true;<br></td></tr
><tr
id=sl_svn7768_2701
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2702
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2703
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2704
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2705
><td class="source"> * Disable smoothing. See smooth().<br></td></tr
><tr
id=sl_svn7768_2706
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2707
><td class="source"> public void noSmooth() {<br></td></tr
><tr
id=sl_svn7768_2708
><td class="source"> smooth = false;<br></td></tr
><tr
id=sl_svn7768_2709
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2710
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2711
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2712
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2713
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2714
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2715
><td class="source"> // IMAGE<br></td></tr
><tr
id=sl_svn7768_2716
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2717
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2718
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2719
><td class="source"> * Modifies the location from which images draw. The default mode is<br></td></tr
><tr
id=sl_svn7768_2720
><td class="source"> * &lt;b&gt;imageMode(CORNER)&lt;/b&gt;, which specifies the location to be the<br></td></tr
><tr
id=sl_svn7768_2721
><td class="source"> * upper-left corner and uses the fourth and fifth parameters of<br></td></tr
><tr
id=sl_svn7768_2722
><td class="source"> * &lt;b&gt;image()&lt;/b&gt; to set the image&#39;s width and height. The syntax<br></td></tr
><tr
id=sl_svn7768_2723
><td class="source"> * &lt;b&gt;imageMode(CORNERS)&lt;/b&gt; uses the second and third parameters of<br></td></tr
><tr
id=sl_svn7768_2724
><td class="source"> * &lt;b&gt;image()&lt;/b&gt; to set the location of one corner of the image and<br></td></tr
><tr
id=sl_svn7768_2725
><td class="source"> * uses the fourth and fifth parameters to set the opposite corner.<br></td></tr
><tr
id=sl_svn7768_2726
><td class="source"> * Use &lt;b&gt;imageMode(CENTER)&lt;/b&gt; to draw images centered at the given<br></td></tr
><tr
id=sl_svn7768_2727
><td class="source"> * x and y position.<br></td></tr
><tr
id=sl_svn7768_2728
><td class="source"> * &lt;br&gt;&lt;br&gt;The parameter to &lt;b&gt;imageMode()&lt;/b&gt; must be written in<br></td></tr
><tr
id=sl_svn7768_2729
><td class="source"> * ALL CAPS because Processing syntax is case sensitive.<br></td></tr
><tr
id=sl_svn7768_2730
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2731
><td class="source"> * @webref image:loading_displaying<br></td></tr
><tr
id=sl_svn7768_2732
><td class="source"> * @param mode Either CORNER, CORNERS, or CENTER<br></td></tr
><tr
id=sl_svn7768_2733
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2734
><td class="source"> * @see processing.core.PApplet#loadImage(String, String)<br></td></tr
><tr
id=sl_svn7768_2735
><td class="source"> * @see processing.core.PImage<br></td></tr
><tr
id=sl_svn7768_2736
><td class="source"> * @see processing.core.PApplet#image(PImage, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2737
><td class="source"> * @see processing.core.PGraphics#background(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2738
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2739
><td class="source"> public void imageMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_2740
><td class="source"> if ((mode == CORNER) || (mode == CORNERS) || (mode == CENTER)) {<br></td></tr
><tr
id=sl_svn7768_2741
><td class="source"> imageMode = mode;<br></td></tr
><tr
id=sl_svn7768_2742
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_2743
><td class="source"> String msg =<br></td></tr
><tr
id=sl_svn7768_2744
><td class="source"> &quot;imageMode() only works with CORNER, CORNERS, or CENTER&quot;;<br></td></tr
><tr
id=sl_svn7768_2745
><td class="source"> throw new RuntimeException(msg);<br></td></tr
><tr
id=sl_svn7768_2746
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2747
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2748
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2749
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2750
><td class="source"> public void image(PImage image, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_2751
><td class="source"> // Starting in release 0144, image errors are simply ignored.<br></td></tr
><tr
id=sl_svn7768_2752
><td class="source"> // loadImageAsync() sets width and height to -1 when loading fails.<br></td></tr
><tr
id=sl_svn7768_2753
><td class="source"> if (image.width == -1 || image.height == -1) return;<br></td></tr
><tr
id=sl_svn7768_2754
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2755
><td class="source"> if (imageMode == CORNER || imageMode == CORNERS) {<br></td></tr
><tr
id=sl_svn7768_2756
><td class="source"> imageImpl(image,<br></td></tr
><tr
id=sl_svn7768_2757
><td class="source"> x, y, x+image.width, y+image.height,<br></td></tr
><tr
id=sl_svn7768_2758
><td class="source"> 0, 0, image.width, image.height);<br></td></tr
><tr
id=sl_svn7768_2759
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2760
><td class="source"> } else if (imageMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_2761
><td class="source"> float x1 = x - image.width/2;<br></td></tr
><tr
id=sl_svn7768_2762
><td class="source"> float y1 = y - image.height/2;<br></td></tr
><tr
id=sl_svn7768_2763
><td class="source"> imageImpl(image,<br></td></tr
><tr
id=sl_svn7768_2764
><td class="source"> x1, y1, x1+image.width, y1+image.height,<br></td></tr
><tr
id=sl_svn7768_2765
><td class="source"> 0, 0, image.width, image.height);<br></td></tr
><tr
id=sl_svn7768_2766
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2767
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2768
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2769
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2770
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2771
><td class="source"> * Displays images to the screen. The images must be in the sketch&#39;s &quot;data&quot;<br></td></tr
><tr
id=sl_svn7768_2772
><td class="source"> * directory to load correctly. Select &quot;Add file...&quot; from the &quot;Sketch&quot; menu<br></td></tr
><tr
id=sl_svn7768_2773
><td class="source"> * to add the image. Processing currently works with GIF, JPEG, and Targa<br></td></tr
><tr
id=sl_svn7768_2774
><td class="source"> * images. The color of an image may be modified with the &lt;b&gt;tint()&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_2775
><td class="source"> * function and if a GIF has transparency, it will maintain its transparency.<br></td></tr
><tr
id=sl_svn7768_2776
><td class="source"> * The &lt;b&gt;img&lt;/b&gt; parameter specifies the image to display and the &lt;b&gt;x&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_2777
><td class="source"> * and &lt;b&gt;y&lt;/b&gt; parameters define the location of the image from its<br></td></tr
><tr
id=sl_svn7768_2778
><td class="source"> * upper-left corner. The image is displayed at its original size unless<br></td></tr
><tr
id=sl_svn7768_2779
><td class="source"> * the &lt;b&gt;width&lt;/b&gt; and &lt;b&gt;height&lt;/b&gt; parameters specify a different size.<br></td></tr
><tr
id=sl_svn7768_2780
><td class="source"> * The &lt;b&gt;imageMode()&lt;/b&gt; function changes the way the parameters work.<br></td></tr
><tr
id=sl_svn7768_2781
><td class="source"> * A call to &lt;b&gt;imageMode(CORNERS)&lt;/b&gt; will change the width and height<br></td></tr
><tr
id=sl_svn7768_2782
><td class="source"> * parameters to define the x and y values of the opposite corner of the<br></td></tr
><tr
id=sl_svn7768_2783
><td class="source"> * image.<br></td></tr
><tr
id=sl_svn7768_2784
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2785
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_2786
><td class="source"> * Starting with release 0124, when using the default (JAVA2D) renderer,<br></td></tr
><tr
id=sl_svn7768_2787
><td class="source"> * smooth() will also improve image quality of resized images.<br></td></tr
><tr
id=sl_svn7768_2788
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2789
><td class="source"> * @webref image:loading_displaying<br></td></tr
><tr
id=sl_svn7768_2790
><td class="source"> * @param image the image to display<br></td></tr
><tr
id=sl_svn7768_2791
><td class="source"> * @param x x-coordinate of the image<br></td></tr
><tr
id=sl_svn7768_2792
><td class="source"> * @param y y-coordinate of the image<br></td></tr
><tr
id=sl_svn7768_2793
><td class="source"> * @param c width to display the image<br></td></tr
><tr
id=sl_svn7768_2794
><td class="source"> * @param d height to display the image<br></td></tr
><tr
id=sl_svn7768_2795
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2796
><td class="source"> * @see processing.core.PApplet#loadImage(String, String)<br></td></tr
><tr
id=sl_svn7768_2797
><td class="source"> * @see processing.core.PImage<br></td></tr
><tr
id=sl_svn7768_2798
><td class="source"> * @see processing.core.PGraphics#imageMode(int)<br></td></tr
><tr
id=sl_svn7768_2799
><td class="source"> * @see processing.core.PGraphics#tint(float)<br></td></tr
><tr
id=sl_svn7768_2800
><td class="source"> * @see processing.core.PGraphics#background(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_2801
><td class="source"> * @see processing.core.PGraphics#alpha(int)<br></td></tr
><tr
id=sl_svn7768_2802
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2803
><td class="source"> public void image(PImage image, float x, float y, float c, float d) {<br></td></tr
><tr
id=sl_svn7768_2804
><td class="source"> image(image, x, y, c, d, 0, 0, image.width, image.height);<br></td></tr
><tr
id=sl_svn7768_2805
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2806
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2807
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2808
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2809
><td class="source"> * Draw an image(), also specifying u/v coordinates.<br></td></tr
><tr
id=sl_svn7768_2810
><td class="source"> * In this method, the u, v coordinates are always based on image space<br></td></tr
><tr
id=sl_svn7768_2811
><td class="source"> * location, regardless of the current textureMode().<br></td></tr
><tr
id=sl_svn7768_2812
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2813
><td class="source"> public void image(PImage image,<br></td></tr
><tr
id=sl_svn7768_2814
><td class="source"> float a, float b, float c, float d,<br></td></tr
><tr
id=sl_svn7768_2815
><td class="source"> int u1, int v1, int u2, int v2) {<br></td></tr
><tr
id=sl_svn7768_2816
><td class="source"> // Starting in release 0144, image errors are simply ignored.<br></td></tr
><tr
id=sl_svn7768_2817
><td class="source"> // loadImageAsync() sets width and height to -1 when loading fails.<br></td></tr
><tr
id=sl_svn7768_2818
><td class="source"> if (image.width == -1 || image.height == -1) return;<br></td></tr
><tr
id=sl_svn7768_2819
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2820
><td class="source"> if (imageMode == CORNER) {<br></td></tr
><tr
id=sl_svn7768_2821
><td class="source"> if (c &lt; 0) { // reset a negative width<br></td></tr
><tr
id=sl_svn7768_2822
><td class="source"> a += c; c = -c;<br></td></tr
><tr
id=sl_svn7768_2823
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2824
><td class="source"> if (d &lt; 0) { // reset a negative height<br></td></tr
><tr
id=sl_svn7768_2825
><td class="source"> b += d; d = -d;<br></td></tr
><tr
id=sl_svn7768_2826
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2827
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2828
><td class="source"> imageImpl(image,<br></td></tr
><tr
id=sl_svn7768_2829
><td class="source"> a, b, a + c, b + d,<br></td></tr
><tr
id=sl_svn7768_2830
><td class="source"> u1, v1, u2, v2);<br></td></tr
><tr
id=sl_svn7768_2831
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2832
><td class="source"> } else if (imageMode == CORNERS) {<br></td></tr
><tr
id=sl_svn7768_2833
><td class="source"> if (c &lt; a) { // reverse because x2 &lt; x1<br></td></tr
><tr
id=sl_svn7768_2834
><td class="source"> float temp = a; a = c; c = temp;<br></td></tr
><tr
id=sl_svn7768_2835
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2836
><td class="source"> if (d &lt; b) { // reverse because y2 &lt; y1<br></td></tr
><tr
id=sl_svn7768_2837
><td class="source"> float temp = b; b = d; d = temp;<br></td></tr
><tr
id=sl_svn7768_2838
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2839
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2840
><td class="source"> imageImpl(image,<br></td></tr
><tr
id=sl_svn7768_2841
><td class="source"> a, b, c, d,<br></td></tr
><tr
id=sl_svn7768_2842
><td class="source"> u1, v1, u2, v2);<br></td></tr
><tr
id=sl_svn7768_2843
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2844
><td class="source"> } else if (imageMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_2845
><td class="source"> // c and d are width/height<br></td></tr
><tr
id=sl_svn7768_2846
><td class="source"> if (c &lt; 0) c = -c;<br></td></tr
><tr
id=sl_svn7768_2847
><td class="source"> if (d &lt; 0) d = -d;<br></td></tr
><tr
id=sl_svn7768_2848
><td class="source"> float x1 = a - c/2;<br></td></tr
><tr
id=sl_svn7768_2849
><td class="source"> float y1 = b - d/2;<br></td></tr
><tr
id=sl_svn7768_2850
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2851
><td class="source"> imageImpl(image,<br></td></tr
><tr
id=sl_svn7768_2852
><td class="source"> x1, y1, x1 + c, y1 + d,<br></td></tr
><tr
id=sl_svn7768_2853
><td class="source"> u1, v1, u2, v2);<br></td></tr
><tr
id=sl_svn7768_2854
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2855
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2856
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2857
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2858
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2859
><td class="source"> * Expects x1, y1, x2, y2 coordinates where (x2 &gt;= x1) and (y2 &gt;= y1).<br></td></tr
><tr
id=sl_svn7768_2860
><td class="source"> * If tint() has been called, the image will be colored.<br></td></tr
><tr
id=sl_svn7768_2861
><td class="source"> * &lt;p/&gt;<br></td></tr
><tr
id=sl_svn7768_2862
><td class="source"> * The default implementation draws an image as a textured quad.<br></td></tr
><tr
id=sl_svn7768_2863
><td class="source"> * The (u, v) coordinates are in image space (they&#39;re ints, after all..)<br></td></tr
><tr
id=sl_svn7768_2864
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2865
><td class="source"> protected void imageImpl(PImage image,<br></td></tr
><tr
id=sl_svn7768_2866
><td class="source"> float x1, float y1, float x2, float y2,<br></td></tr
><tr
id=sl_svn7768_2867
><td class="source"> int u1, int v1, int u2, int v2) {<br></td></tr
><tr
id=sl_svn7768_2868
><td class="source"> boolean savedStroke = stroke;<br></td></tr
><tr
id=sl_svn7768_2869
><td class="source">// boolean savedFill = fill;<br></td></tr
><tr
id=sl_svn7768_2870
><td class="source"> int savedTextureMode = textureMode;<br></td></tr
><tr
id=sl_svn7768_2871
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2872
><td class="source"> stroke = false;<br></td></tr
><tr
id=sl_svn7768_2873
><td class="source">// fill = true;<br></td></tr
><tr
id=sl_svn7768_2874
><td class="source"> textureMode = IMAGE;<br></td></tr
><tr
id=sl_svn7768_2875
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2876
><td class="source">// float savedFillR = fillR;<br></td></tr
><tr
id=sl_svn7768_2877
><td class="source">// float savedFillG = fillG;<br></td></tr
><tr
id=sl_svn7768_2878
><td class="source">// float savedFillB = fillB;<br></td></tr
><tr
id=sl_svn7768_2879
><td class="source">// float savedFillA = fillA;<br></td></tr
><tr
id=sl_svn7768_2880
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_2881
><td class="source">// if (tint) {<br></td></tr
><tr
id=sl_svn7768_2882
><td class="source">// fillR = tintR;<br></td></tr
><tr
id=sl_svn7768_2883
><td class="source">// fillG = tintG;<br></td></tr
><tr
id=sl_svn7768_2884
><td class="source">// fillB = tintB;<br></td></tr
><tr
id=sl_svn7768_2885
><td class="source">// fillA = tintA;<br></td></tr
><tr
id=sl_svn7768_2886
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_2887
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_2888
><td class="source">// fillR = 1;<br></td></tr
><tr
id=sl_svn7768_2889
><td class="source">// fillG = 1;<br></td></tr
><tr
id=sl_svn7768_2890
><td class="source">// fillB = 1;<br></td></tr
><tr
id=sl_svn7768_2891
><td class="source">// fillA = 1;<br></td></tr
><tr
id=sl_svn7768_2892
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_2893
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2894
><td class="source"> beginShape(QUADS);<br></td></tr
><tr
id=sl_svn7768_2895
><td class="source"> texture(image);<br></td></tr
><tr
id=sl_svn7768_2896
><td class="source"> vertex(x1, y1, u1, v1);<br></td></tr
><tr
id=sl_svn7768_2897
><td class="source"> vertex(x1, y2, u1, v2);<br></td></tr
><tr
id=sl_svn7768_2898
><td class="source"> vertex(x2, y2, u2, v2);<br></td></tr
><tr
id=sl_svn7768_2899
><td class="source"> vertex(x2, y1, u2, v1);<br></td></tr
><tr
id=sl_svn7768_2900
><td class="source"> endShape();<br></td></tr
><tr
id=sl_svn7768_2901
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2902
><td class="source"> stroke = savedStroke;<br></td></tr
><tr
id=sl_svn7768_2903
><td class="source">// fill = savedFill;<br></td></tr
><tr
id=sl_svn7768_2904
><td class="source"> textureMode = savedTextureMode;<br></td></tr
><tr
id=sl_svn7768_2905
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2906
><td class="source">// fillR = savedFillR;<br></td></tr
><tr
id=sl_svn7768_2907
><td class="source">// fillG = savedFillG;<br></td></tr
><tr
id=sl_svn7768_2908
><td class="source">// fillB = savedFillB;<br></td></tr
><tr
id=sl_svn7768_2909
><td class="source">// fillA = savedFillA;<br></td></tr
><tr
id=sl_svn7768_2910
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2911
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2912
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2913
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2914
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_2915
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2916
><td class="source"> // SHAPE<br></td></tr
><tr
id=sl_svn7768_2917
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2918
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2919
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2920
><td class="source"> * Modifies the location from which shapes draw.<br></td></tr
><tr
id=sl_svn7768_2921
><td class="source"> * The default mode is &lt;b&gt;shapeMode(CORNER)&lt;/b&gt;, which specifies the<br></td></tr
><tr
id=sl_svn7768_2922
><td class="source"> * location to be the upper left corner of the shape and uses the third<br></td></tr
><tr
id=sl_svn7768_2923
><td class="source"> * and fourth parameters of &lt;b&gt;shape()&lt;/b&gt; to specify the width and height.<br></td></tr
><tr
id=sl_svn7768_2924
><td class="source"> * The syntax &lt;b&gt;shapeMode(CORNERS)&lt;/b&gt; uses the first and second parameters<br></td></tr
><tr
id=sl_svn7768_2925
><td class="source"> * of &lt;b&gt;shape()&lt;/b&gt; to set the location of one corner and uses the third<br></td></tr
><tr
id=sl_svn7768_2926
><td class="source"> * and fourth parameters to set the opposite corner.<br></td></tr
><tr
id=sl_svn7768_2927
><td class="source"> * The syntax &lt;b&gt;shapeMode(CENTER)&lt;/b&gt; draws the shape from its center point<br></td></tr
><tr
id=sl_svn7768_2928
><td class="source"> * and uses the third and forth parameters of &lt;b&gt;shape()&lt;/b&gt; to specify the<br></td></tr
><tr
id=sl_svn7768_2929
><td class="source"> * width and height.<br></td></tr
><tr
id=sl_svn7768_2930
><td class="source"> * The parameter must be written in &quot;ALL CAPS&quot; because Processing syntax<br></td></tr
><tr
id=sl_svn7768_2931
><td class="source"> * is case sensitive.<br></td></tr
><tr
id=sl_svn7768_2932
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2933
><td class="source"> * @param mode One of CORNER, CORNERS, CENTER<br></td></tr
><tr
id=sl_svn7768_2934
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2935
><td class="source"> * @webref shape:loading_displaying<br></td></tr
><tr
id=sl_svn7768_2936
><td class="source"> * @see PGraphics#shape(PShape)<br></td></tr
><tr
id=sl_svn7768_2937
><td class="source"> * @see PGraphics#rectMode(int)<br></td></tr
><tr
id=sl_svn7768_2938
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2939
><td class="source"> public void shapeMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_2940
><td class="source"> this.shapeMode = mode;<br></td></tr
><tr
id=sl_svn7768_2941
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2942
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2943
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2944
><td class="source"> public void shape(PShape shape) {<br></td></tr
><tr
id=sl_svn7768_2945
><td class="source"> if (shape.isVisible()) { // don&#39;t do expensive matrix ops if invisible<br></td></tr
><tr
id=sl_svn7768_2946
><td class="source"> if (shapeMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_2947
><td class="source"> pushMatrix();<br></td></tr
><tr
id=sl_svn7768_2948
><td class="source"> translate(-shape.getWidth()/2, -shape.getHeight()/2);<br></td></tr
><tr
id=sl_svn7768_2949
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2950
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2951
><td class="source"> shape.draw(this); // needs to handle recorder too<br></td></tr
><tr
id=sl_svn7768_2952
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2953
><td class="source"> if (shapeMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_2954
><td class="source"> popMatrix();<br></td></tr
><tr
id=sl_svn7768_2955
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2956
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2957
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2958
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2959
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2960
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2961
><td class="source"> * Convenience method to draw at a particular location.<br></td></tr
><tr
id=sl_svn7768_2962
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_2963
><td class="source"> public void shape(PShape shape, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_2964
><td class="source"> if (shape.isVisible()) { // don&#39;t do expensive matrix ops if invisible<br></td></tr
><tr
id=sl_svn7768_2965
><td class="source"> pushMatrix();<br></td></tr
><tr
id=sl_svn7768_2966
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2967
><td class="source"> if (shapeMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_2968
><td class="source"> translate(x - shape.getWidth()/2, y - shape.getHeight()/2);<br></td></tr
><tr
id=sl_svn7768_2969
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2970
><td class="source"> } else if ((shapeMode == CORNER) || (shapeMode == CORNERS)) {<br></td></tr
><tr
id=sl_svn7768_2971
><td class="source"> translate(x, y);<br></td></tr
><tr
id=sl_svn7768_2972
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2973
><td class="source"> shape.draw(this);<br></td></tr
><tr
id=sl_svn7768_2974
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2975
><td class="source"> popMatrix();<br></td></tr
><tr
id=sl_svn7768_2976
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2977
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_2978
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2979
><td class="source"><br></td></tr
><tr
id=sl_svn7768_2980
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_2981
><td class="source"> * Displays shapes to the screen. The shapes must be in the sketch&#39;s &quot;data&quot;<br></td></tr
><tr
id=sl_svn7768_2982
><td class="source"> * directory to load correctly. Select &quot;Add file...&quot; from the &quot;Sketch&quot; menu<br></td></tr
><tr
id=sl_svn7768_2983
><td class="source"> * to add the shape.<br></td></tr
><tr
id=sl_svn7768_2984
><td class="source"> * Processing currently works with SVG shapes only.<br></td></tr
><tr
id=sl_svn7768_2985
><td class="source"> * The &lt;b&gt;sh&lt;/b&gt; parameter specifies the shape to display and the &lt;b&gt;x&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_2986
><td class="source"> * and &lt;b&gt;y&lt;/b&gt; parameters define the location of the shape from its<br></td></tr
><tr
id=sl_svn7768_2987
><td class="source"> * upper-left corner.<br></td></tr
><tr
id=sl_svn7768_2988
><td class="source"> * The shape is displayed at its original size unless the &lt;b&gt;width&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_2989
><td class="source"> * and &lt;b&gt;height&lt;/b&gt; parameters specify a different size.<br></td></tr
><tr
id=sl_svn7768_2990
><td class="source"> * The &lt;b&gt;shapeMode()&lt;/b&gt; function changes the way the parameters work.<br></td></tr
><tr
id=sl_svn7768_2991
><td class="source"> * A call to &lt;b&gt;shapeMode(CORNERS)&lt;/b&gt;, for example, will change the width<br></td></tr
><tr
id=sl_svn7768_2992
><td class="source"> * and height parameters to define the x and y values of the opposite corner<br></td></tr
><tr
id=sl_svn7768_2993
><td class="source"> * of the shape.<br></td></tr
><tr
id=sl_svn7768_2994
><td class="source"> * &lt;br&gt;&lt;br&gt;<br></td></tr
><tr
id=sl_svn7768_2995
><td class="source"> * Note complex shapes may draw awkwardly with P2D, P3D, and OPENGL. Those<br></td></tr
><tr
id=sl_svn7768_2996
><td class="source"> * renderers do not yet support shapes that have holes or complicated breaks.<br></td></tr
><tr
id=sl_svn7768_2997
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_2998
><td class="source"> * @param shape<br></td></tr
><tr
id=sl_svn7768_2999
><td class="source"> * @param x x-coordinate of the shape<br></td></tr
><tr
id=sl_svn7768_3000
><td class="source"> * @param y y-coordinate of the shape<br></td></tr
><tr
id=sl_svn7768_3001
><td class="source"> * @param c width to display the shape<br></td></tr
><tr
id=sl_svn7768_3002
><td class="source"> * @param d height to display the shape<br></td></tr
><tr
id=sl_svn7768_3003
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_3004
><td class="source"> * @webref shape:loading_displaying<br></td></tr
><tr
id=sl_svn7768_3005
><td class="source"> * @see PShape<br></td></tr
><tr
id=sl_svn7768_3006
><td class="source"> * @see PGraphics#loadShape(String)<br></td></tr
><tr
id=sl_svn7768_3007
><td class="source"> * @see PGraphics#shapeMode(int)<br></td></tr
><tr
id=sl_svn7768_3008
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3009
><td class="source"> public void shape(PShape shape, float x, float y, float c, float d) {<br></td></tr
><tr
id=sl_svn7768_3010
><td class="source"> if (shape.isVisible()) { // don&#39;t do expensive matrix ops if invisible<br></td></tr
><tr
id=sl_svn7768_3011
><td class="source"> pushMatrix();<br></td></tr
><tr
id=sl_svn7768_3012
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3013
><td class="source"> if (shapeMode == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3014
><td class="source"> // x and y are center, c and d refer to a diameter<br></td></tr
><tr
id=sl_svn7768_3015
><td class="source"> translate(x - c/2f, y - d/2f);<br></td></tr
><tr
id=sl_svn7768_3016
><td class="source"> scale(c / shape.getWidth(), d / shape.getHeight());<br></td></tr
><tr
id=sl_svn7768_3017
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3018
><td class="source"> } else if (shapeMode == CORNER) {<br></td></tr
><tr
id=sl_svn7768_3019
><td class="source"> translate(x, y);<br></td></tr
><tr
id=sl_svn7768_3020
><td class="source"> scale(c / shape.getWidth(), d / shape.getHeight());<br></td></tr
><tr
id=sl_svn7768_3021
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3022
><td class="source"> } else if (shapeMode == CORNERS) {<br></td></tr
><tr
id=sl_svn7768_3023
><td class="source"> // c and d are x2/y2, make them into width/height<br></td></tr
><tr
id=sl_svn7768_3024
><td class="source"> c -= x;<br></td></tr
><tr
id=sl_svn7768_3025
><td class="source"> d -= y;<br></td></tr
><tr
id=sl_svn7768_3026
><td class="source"> // then same as above<br></td></tr
><tr
id=sl_svn7768_3027
><td class="source"> translate(x, y);<br></td></tr
><tr
id=sl_svn7768_3028
><td class="source"> scale(c / shape.getWidth(), d / shape.getHeight());<br></td></tr
><tr
id=sl_svn7768_3029
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3030
><td class="source"> shape.draw(this);<br></td></tr
><tr
id=sl_svn7768_3031
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3032
><td class="source"> popMatrix();<br></td></tr
><tr
id=sl_svn7768_3033
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3034
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3035
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3036
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3037
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3038
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_3039
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3040
><td class="source"> // TEXT/FONTS<br></td></tr
><tr
id=sl_svn7768_3041
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3042
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3043
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3044
><td class="source"> * Sets the alignment of the text to one of LEFT, CENTER, or RIGHT.<br></td></tr
><tr
id=sl_svn7768_3045
><td class="source"> * This will also reset the vertical text alignment to BASELINE.<br></td></tr
><tr
id=sl_svn7768_3046
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3047
><td class="source"> public void textAlign(int align) {<br></td></tr
><tr
id=sl_svn7768_3048
><td class="source"> textAlign(align, BASELINE);<br></td></tr
><tr
id=sl_svn7768_3049
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3050
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3051
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3052
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3053
><td class="source"> * Sets the horizontal and vertical alignment of the text. The horizontal<br></td></tr
><tr
id=sl_svn7768_3054
><td class="source"> * alignment can be one of LEFT, CENTER, or RIGHT. The vertical alignment<br></td></tr
><tr
id=sl_svn7768_3055
><td class="source"> * can be TOP, BOTTOM, CENTER, or the BASELINE (the default).<br></td></tr
><tr
id=sl_svn7768_3056
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3057
><td class="source"> public void textAlign(int alignX, int alignY) {<br></td></tr
><tr
id=sl_svn7768_3058
><td class="source"> textAlign = alignX;<br></td></tr
><tr
id=sl_svn7768_3059
><td class="source"> textAlignY = alignY;<br></td></tr
><tr
id=sl_svn7768_3060
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3061
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3062
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3063
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3064
><td class="source"> * Returns the ascent of the current font at the current size.<br></td></tr
><tr
id=sl_svn7768_3065
><td class="source"> * This is a method, rather than a variable inside the PGraphics object<br></td></tr
><tr
id=sl_svn7768_3066
><td class="source"> * because it requires calculation.<br></td></tr
><tr
id=sl_svn7768_3067
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3068
><td class="source"> public float textAscent() {<br></td></tr
><tr
id=sl_svn7768_3069
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3070
><td class="source"> defaultFontOrDeath(&quot;textAscent&quot;);<br></td></tr
><tr
id=sl_svn7768_3071
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3072
><td class="source"> return textFont.ascent() * ((textMode == SCREEN) ? textFont.size : textSize);<br></td></tr
><tr
id=sl_svn7768_3073
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3074
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3075
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3076
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3077
><td class="source"> * Returns the descent of the current font at the current size.<br></td></tr
><tr
id=sl_svn7768_3078
><td class="source"> * This is a method, rather than a variable inside the PGraphics object<br></td></tr
><tr
id=sl_svn7768_3079
><td class="source"> * because it requires calculation.<br></td></tr
><tr
id=sl_svn7768_3080
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3081
><td class="source"> public float textDescent() {<br></td></tr
><tr
id=sl_svn7768_3082
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3083
><td class="source"> defaultFontOrDeath(&quot;textDescent&quot;);<br></td></tr
><tr
id=sl_svn7768_3084
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3085
><td class="source"> return textFont.descent() * ((textMode == SCREEN) ? textFont.size : textSize);<br></td></tr
><tr
id=sl_svn7768_3086
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3087
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3088
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3089
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3090
><td class="source"> * Sets the current font. The font&#39;s size will be the &quot;natural&quot;<br></td></tr
><tr
id=sl_svn7768_3091
><td class="source"> * size of this font (the size that was set when using &quot;Create Font&quot;).<br></td></tr
><tr
id=sl_svn7768_3092
><td class="source"> * The leading will also be reset.<br></td></tr
><tr
id=sl_svn7768_3093
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3094
><td class="source"> public void textFont(PFont which) {<br></td></tr
><tr
id=sl_svn7768_3095
><td class="source"> if (which != null) {<br></td></tr
><tr
id=sl_svn7768_3096
><td class="source"> textFont = which;<br></td></tr
><tr
id=sl_svn7768_3097
><td class="source"> if (hints[ENABLE_NATIVE_FONTS]) {<br></td></tr
><tr
id=sl_svn7768_3098
><td class="source"> //if (which.font == null) {<br></td></tr
><tr
id=sl_svn7768_3099
><td class="source"> which.findFont();<br></td></tr
><tr
id=sl_svn7768_3100
><td class="source"> //}<br></td></tr
><tr
id=sl_svn7768_3101
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3102
><td class="source"> /*<br></td></tr
><tr
id=sl_svn7768_3103
><td class="source"> textFontNative = which.font;<br></td></tr
><tr
id=sl_svn7768_3104
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3105
><td class="source"> //textFontNativeMetrics = null;<br></td></tr
><tr
id=sl_svn7768_3106
><td class="source"> // changed for rev 0104 for textMode(SHAPE) in opengl<br></td></tr
><tr
id=sl_svn7768_3107
><td class="source"> if (textFontNative != null) {<br></td></tr
><tr
id=sl_svn7768_3108
><td class="source"> // TODO need a better way to handle this. could use reflection to get<br></td></tr
><tr
id=sl_svn7768_3109
><td class="source"> // rid of the warning, but that&#39;d be a little silly. supporting this is<br></td></tr
><tr
id=sl_svn7768_3110
><td class="source"> // an artifact of supporting java 1.1, otherwise we&#39;d use getLineMetrics,<br></td></tr
><tr
id=sl_svn7768_3111
><td class="source"> // as recommended by the @deprecated flag.<br></td></tr
><tr
id=sl_svn7768_3112
><td class="source"> textFontNativeMetrics =<br></td></tr
><tr
id=sl_svn7768_3113
><td class="source"> Toolkit.getDefaultToolkit().getFontMetrics(textFontNative);<br></td></tr
><tr
id=sl_svn7768_3114
><td class="source"> // The following is what needs to be done, however we need to be able<br></td></tr
><tr
id=sl_svn7768_3115
><td class="source"> // to get the actual graphics context where the drawing is happening.<br></td></tr
><tr
id=sl_svn7768_3116
><td class="source"> // For instance, parent.getGraphics() doesn&#39;t work for OpenGL since<br></td></tr
><tr
id=sl_svn7768_3117
><td class="source"> // an OpenGL drawing surface is an embedded component.<br></td></tr
><tr
id=sl_svn7768_3118
><td class="source">// if (parent != null) {<br></td></tr
><tr
id=sl_svn7768_3119
><td class="source">// textFontNativeMetrics = parent.getGraphics().getFontMetrics(textFontNative);<br></td></tr
><tr
id=sl_svn7768_3120
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_3121
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3122
><td class="source"> // float w = font.getStringBounds(text, g2.getFontRenderContext()).getWidth();<br></td></tr
><tr
id=sl_svn7768_3123
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3124
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3125
><td class="source"> textSize(which.size);<br></td></tr
><tr
id=sl_svn7768_3126
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3127
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_3128
><td class="source"> throw new RuntimeException(ERROR_TEXTFONT_NULL_PFONT);<br></td></tr
><tr
id=sl_svn7768_3129
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3130
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3131
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3132
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3133
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3134
><td class="source"> * Useful function to set the font and size at the same time.<br></td></tr
><tr
id=sl_svn7768_3135
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3136
><td class="source"> public void textFont(PFont which, float size) {<br></td></tr
><tr
id=sl_svn7768_3137
><td class="source"> textFont(which);<br></td></tr
><tr
id=sl_svn7768_3138
><td class="source"> textSize(size);<br></td></tr
><tr
id=sl_svn7768_3139
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3140
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3141
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3142
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3143
><td class="source"> * Set the text leading to a specific value. If using a custom<br></td></tr
><tr
id=sl_svn7768_3144
><td class="source"> * value for the text leading, you&#39;ll have to call textLeading()<br></td></tr
><tr
id=sl_svn7768_3145
><td class="source"> * again after any calls to textSize().<br></td></tr
><tr
id=sl_svn7768_3146
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3147
><td class="source"> public void textLeading(float leading) {<br></td></tr
><tr
id=sl_svn7768_3148
><td class="source"> textLeading = leading;<br></td></tr
><tr
id=sl_svn7768_3149
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3150
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3151
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3152
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3153
><td class="source"> * Sets the text rendering/placement to be either SCREEN (direct<br></td></tr
><tr
id=sl_svn7768_3154
><td class="source"> * to the screen, exact coordinates, only use the font&#39;s original size)<br></td></tr
><tr
id=sl_svn7768_3155
><td class="source"> * or MODEL (the default, where text is manipulated by translate() and<br></td></tr
><tr
id=sl_svn7768_3156
><td class="source"> * can have a textSize). The text size cannot be set when using<br></td></tr
><tr
id=sl_svn7768_3157
><td class="source"> * textMode(SCREEN), because it uses the pixels directly from the font.<br></td></tr
><tr
id=sl_svn7768_3158
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3159
><td class="source"> public void textMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_3160
><td class="source"> // CENTER and MODEL overlap (they&#39;re both 3)<br></td></tr
><tr
id=sl_svn7768_3161
><td class="source"> if ((mode == LEFT) || (mode == RIGHT)) {<br></td></tr
><tr
id=sl_svn7768_3162
><td class="source"> showWarning(&quot;Since Processing beta, textMode() is now textAlign().&quot;);<br></td></tr
><tr
id=sl_svn7768_3163
><td class="source"> return;<br></td></tr
><tr
id=sl_svn7768_3164
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3165
><td class="source">// if ((mode != SCREEN) &amp;&amp; (mode != MODEL)) {<br></td></tr
><tr
id=sl_svn7768_3166
><td class="source">// showError(&quot;Only textMode(SCREEN) and textMode(MODEL) &quot; +<br></td></tr
><tr
id=sl_svn7768_3167
><td class="source">// &quot;are available with this renderer.&quot;);<br></td></tr
><tr
id=sl_svn7768_3168
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_3169
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3170
><td class="source"> if (textModeCheck(mode)) {<br></td></tr
><tr
id=sl_svn7768_3171
><td class="source"> textMode = mode;<br></td></tr
><tr
id=sl_svn7768_3172
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_3173
><td class="source"> String modeStr = String.valueOf(mode);<br></td></tr
><tr
id=sl_svn7768_3174
><td class="source"> switch (mode) {<br></td></tr
><tr
id=sl_svn7768_3175
><td class="source"> case SCREEN: modeStr = &quot;SCREEN&quot;; break;<br></td></tr
><tr
id=sl_svn7768_3176
><td class="source"> case MODEL: modeStr = &quot;MODEL&quot;; break;<br></td></tr
><tr
id=sl_svn7768_3177
><td class="source"> case SHAPE: modeStr = &quot;SHAPE&quot;; break;<br></td></tr
><tr
id=sl_svn7768_3178
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3179
><td class="source"> showWarning(&quot;textMode(&quot; + modeStr + &quot;) is not supported by this renderer.&quot;);<br></td></tr
><tr
id=sl_svn7768_3180
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3181
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3182
><td class="source"> // reset the font to its natural size<br></td></tr
><tr
id=sl_svn7768_3183
><td class="source"> // (helps with width calculations and all that)<br></td></tr
><tr
id=sl_svn7768_3184
><td class="source"> //if (textMode == SCREEN) {<br></td></tr
><tr
id=sl_svn7768_3185
><td class="source"> //textSize(textFont.size);<br></td></tr
><tr
id=sl_svn7768_3186
><td class="source"> //}<br></td></tr
><tr
id=sl_svn7768_3187
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3188
><td class="source"> //} else {<br></td></tr
><tr
id=sl_svn7768_3189
><td class="source"> //throw new RuntimeException(&quot;use textFont() before textMode()&quot;);<br></td></tr
><tr
id=sl_svn7768_3190
><td class="source"> //}<br></td></tr
><tr
id=sl_svn7768_3191
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3192
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3193
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3194
><td class="source"> protected boolean textModeCheck(int mode) {<br></td></tr
><tr
id=sl_svn7768_3195
><td class="source"> return true;<br></td></tr
><tr
id=sl_svn7768_3196
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3197
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3198
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3199
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3200
><td class="source"> * Sets the text size, also resets the value for the leading.<br></td></tr
><tr
id=sl_svn7768_3201
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3202
><td class="source"> public void textSize(float size) {<br></td></tr
><tr
id=sl_svn7768_3203
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3204
><td class="source"> defaultFontOrDeath(&quot;textSize&quot;, size);<br></td></tr
><tr
id=sl_svn7768_3205
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3206
><td class="source"> textSize = size;<br></td></tr
><tr
id=sl_svn7768_3207
><td class="source"> textLeading = (textAscent() + textDescent()) * 1.275f;<br></td></tr
><tr
id=sl_svn7768_3208
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3209
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_3210
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_3211
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3212
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3213
><td class="source"> public float textWidth(char c) {<br></td></tr
><tr
id=sl_svn7768_3214
><td class="source"> textWidthBuffer[0] = c;<br></td></tr
><tr
id=sl_svn7768_3215
><td class="source"> return textWidthImpl(textWidthBuffer, 0, 1);<br></td></tr
><tr
id=sl_svn7768_3216
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3217
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3218
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3219
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3220
><td class="source"> * Return the width of a line of text. If the text has multiple<br></td></tr
><tr
id=sl_svn7768_3221
><td class="source"> * lines, this returns the length of the longest line.<br></td></tr
><tr
id=sl_svn7768_3222
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3223
><td class="source"> public float textWidth(String str) {<br></td></tr
><tr
id=sl_svn7768_3224
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3225
><td class="source"> defaultFontOrDeath(&quot;textWidth&quot;);<br></td></tr
><tr
id=sl_svn7768_3226
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3227
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3228
><td class="source"> int length = str.length();<br></td></tr
><tr
id=sl_svn7768_3229
><td class="source"> if (length &gt; textWidthBuffer.length) {<br></td></tr
><tr
id=sl_svn7768_3230
><td class="source"> textWidthBuffer = new char[length + 10];<br></td></tr
><tr
id=sl_svn7768_3231
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3232
><td class="source"> str.getChars(0, length, textWidthBuffer, 0);<br></td></tr
><tr
id=sl_svn7768_3233
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3234
><td class="source"> float wide = 0;<br></td></tr
><tr
id=sl_svn7768_3235
><td class="source"> int index = 0;<br></td></tr
><tr
id=sl_svn7768_3236
><td class="source"> int start = 0;<br></td></tr
><tr
id=sl_svn7768_3237
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3238
><td class="source"> while (index &lt; length) {<br></td></tr
><tr
id=sl_svn7768_3239
><td class="source"> if (textWidthBuffer[index] == &#39;\n&#39;) {<br></td></tr
><tr
id=sl_svn7768_3240
><td class="source"> wide = Math.max(wide, textWidthImpl(textWidthBuffer, start, index));<br></td></tr
><tr
id=sl_svn7768_3241
><td class="source"> start = index+1;<br></td></tr
><tr
id=sl_svn7768_3242
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3243
><td class="source"> index++;<br></td></tr
><tr
id=sl_svn7768_3244
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3245
><td class="source"> if (start &lt; length) {<br></td></tr
><tr
id=sl_svn7768_3246
><td class="source"> wide = Math.max(wide, textWidthImpl(textWidthBuffer, start, index));<br></td></tr
><tr
id=sl_svn7768_3247
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3248
><td class="source"> return wide;<br></td></tr
><tr
id=sl_svn7768_3249
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3250
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3251
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3252
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3253
><td class="source"> * TODO not sure if this stays...<br></td></tr
><tr
id=sl_svn7768_3254
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3255
><td class="source"> public float textWidth(char[] chars, int start, int length) {<br></td></tr
><tr
id=sl_svn7768_3256
><td class="source"> return textWidthImpl(chars, start, start + length);<br></td></tr
><tr
id=sl_svn7768_3257
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3258
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3259
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3260
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3261
><td class="source"> * Implementation of returning the text width of<br></td></tr
><tr
id=sl_svn7768_3262
><td class="source"> * the chars [start, stop) in the buffer.<br></td></tr
><tr
id=sl_svn7768_3263
><td class="source"> * Unlike the previous version that was inside PFont, this will<br></td></tr
><tr
id=sl_svn7768_3264
><td class="source"> * return the size not of a 1 pixel font, but the actual current size.<br></td></tr
><tr
id=sl_svn7768_3265
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3266
><td class="source"> protected float textWidthImpl(char buffer[], int start, int stop) {<br></td></tr
><tr
id=sl_svn7768_3267
><td class="source"> float wide = 0;<br></td></tr
><tr
id=sl_svn7768_3268
><td class="source"> for (int i = start; i &lt; stop; i++) {<br></td></tr
><tr
id=sl_svn7768_3269
><td class="source"> // could add kerning here, but it just ain&#39;t implemented<br></td></tr
><tr
id=sl_svn7768_3270
><td class="source"> wide += textFont.width(buffer[i]) * textSize;<br></td></tr
><tr
id=sl_svn7768_3271
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3272
><td class="source"> return wide;<br></td></tr
><tr
id=sl_svn7768_3273
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3274
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3275
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3276
><td class="source"> // ........................................................<br></td></tr
><tr
id=sl_svn7768_3277
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3278
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3279
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3280
><td class="source"> * Write text where we just left off.<br></td></tr
><tr
id=sl_svn7768_3281
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3282
><td class="source"> public void text(char c) {<br></td></tr
><tr
id=sl_svn7768_3283
><td class="source"> text(c, textX, textY, textZ);<br></td></tr
><tr
id=sl_svn7768_3284
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3285
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3286
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3287
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3288
><td class="source"> * Draw a single character on screen.<br></td></tr
><tr
id=sl_svn7768_3289
><td class="source"> * Extremely slow when used with textMode(SCREEN) and Java 2D,<br></td></tr
><tr
id=sl_svn7768_3290
><td class="source"> * because loadPixels has to be called first and updatePixels last.<br></td></tr
><tr
id=sl_svn7768_3291
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3292
><td class="source"> public void text(char c, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3293
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3294
><td class="source"> defaultFontOrDeath(&quot;text&quot;);<br></td></tr
><tr
id=sl_svn7768_3295
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3296
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3297
><td class="source"> if (textMode == SCREEN) loadPixels();<br></td></tr
><tr
id=sl_svn7768_3298
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3299
><td class="source"> if (textAlignY == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3300
><td class="source"> y += textAscent() / 2;<br></td></tr
><tr
id=sl_svn7768_3301
><td class="source"> } else if (textAlignY == TOP) {<br></td></tr
><tr
id=sl_svn7768_3302
><td class="source"> y += textAscent();<br></td></tr
><tr
id=sl_svn7768_3303
><td class="source"> } else if (textAlignY == BOTTOM) {<br></td></tr
><tr
id=sl_svn7768_3304
><td class="source"> y -= textDescent();<br></td></tr
><tr
id=sl_svn7768_3305
><td class="source"> //} else if (textAlignY == BASELINE) {<br></td></tr
><tr
id=sl_svn7768_3306
><td class="source"> // do nothing<br></td></tr
><tr
id=sl_svn7768_3307
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3308
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3309
><td class="source"> textBuffer[0] = c;<br></td></tr
><tr
id=sl_svn7768_3310
><td class="source"> textLineAlignImpl(textBuffer, 0, 1, x, y);<br></td></tr
><tr
id=sl_svn7768_3311
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3312
><td class="source"> if (textMode == SCREEN) updatePixels();<br></td></tr
><tr
id=sl_svn7768_3313
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3314
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3315
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3316
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3317
><td class="source"> * Draw a single character on screen (with a z coordinate)<br></td></tr
><tr
id=sl_svn7768_3318
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3319
><td class="source"> public void text(char c, float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3320
><td class="source">// if ((z != 0) &amp;&amp; (textMode == SCREEN)) {<br></td></tr
><tr
id=sl_svn7768_3321
><td class="source">// String msg = &quot;textMode(SCREEN) cannot have a z coordinate&quot;;<br></td></tr
><tr
id=sl_svn7768_3322
><td class="source">// throw new RuntimeException(msg);<br></td></tr
><tr
id=sl_svn7768_3323
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_3324
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3325
><td class="source"> if (z != 0) translate(0, 0, z); // slowness, badness<br></td></tr
><tr
id=sl_svn7768_3326
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3327
><td class="source"> text(c, x, y);<br></td></tr
><tr
id=sl_svn7768_3328
><td class="source"> textZ = z;<br></td></tr
><tr
id=sl_svn7768_3329
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3330
><td class="source"> if (z != 0) translate(0, 0, -z);<br></td></tr
><tr
id=sl_svn7768_3331
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3332
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3333
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3334
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3335
><td class="source"> * Write text where we just left off.<br></td></tr
><tr
id=sl_svn7768_3336
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3337
><td class="source"> public void text(String str) {<br></td></tr
><tr
id=sl_svn7768_3338
><td class="source"> text(str, textX, textY, textZ);<br></td></tr
><tr
id=sl_svn7768_3339
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3340
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3341
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3342
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3343
><td class="source"> * Draw a chunk of text.<br></td></tr
><tr
id=sl_svn7768_3344
><td class="source"> * Newlines that are \n (Unix newline or linefeed char, ascii 10)<br></td></tr
><tr
id=sl_svn7768_3345
><td class="source"> * are honored, but \r (carriage return, Windows and Mac OS) are<br></td></tr
><tr
id=sl_svn7768_3346
><td class="source"> * ignored.<br></td></tr
><tr
id=sl_svn7768_3347
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3348
><td class="source"> public void text(String str, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3349
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3350
><td class="source"> defaultFontOrDeath(&quot;text&quot;);<br></td></tr
><tr
id=sl_svn7768_3351
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3352
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3353
><td class="source"> if (textMode == SCREEN) loadPixels();<br></td></tr
><tr
id=sl_svn7768_3354
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3355
><td class="source"> int length = str.length();<br></td></tr
><tr
id=sl_svn7768_3356
><td class="source"> if (length &gt; textBuffer.length) {<br></td></tr
><tr
id=sl_svn7768_3357
><td class="source"> textBuffer = new char[length + 10];<br></td></tr
><tr
id=sl_svn7768_3358
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3359
><td class="source"> str.getChars(0, length, textBuffer, 0);<br></td></tr
><tr
id=sl_svn7768_3360
><td class="source"> text(textBuffer, 0, length, x, y);<br></td></tr
><tr
id=sl_svn7768_3361
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3362
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3363
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3364
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3365
><td class="source"> * Method to draw text from an array of chars. This method will usually be<br></td></tr
><tr
id=sl_svn7768_3366
><td class="source"> * more efficient than drawing from a String object, because the String will<br></td></tr
><tr
id=sl_svn7768_3367
><td class="source"> * not be converted to a char array before drawing.<br></td></tr
><tr
id=sl_svn7768_3368
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3369
><td class="source"> public void text(char[] chars, int start, int stop, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3370
><td class="source"> // If multiple lines, sum the height of the additional lines<br></td></tr
><tr
id=sl_svn7768_3371
><td class="source"> float high = 0; //-textAscent();<br></td></tr
><tr
id=sl_svn7768_3372
><td class="source"> for (int i = start; i &lt; stop; i++) {<br></td></tr
><tr
id=sl_svn7768_3373
><td class="source"> if (chars[i] == &#39;\n&#39;) {<br></td></tr
><tr
id=sl_svn7768_3374
><td class="source"> high += textLeading;<br></td></tr
><tr
id=sl_svn7768_3375
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3376
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3377
><td class="source"> if (textAlignY == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3378
><td class="source"> // for a single line, this adds half the textAscent to y<br></td></tr
><tr
id=sl_svn7768_3379
><td class="source"> // for multiple lines, subtract half the additional height<br></td></tr
><tr
id=sl_svn7768_3380
><td class="source"> //y += (textAscent() - textDescent() - high)/2;<br></td></tr
><tr
id=sl_svn7768_3381
><td class="source"> y += (textAscent() - high)/2;<br></td></tr
><tr
id=sl_svn7768_3382
><td class="source"> } else if (textAlignY == TOP) {<br></td></tr
><tr
id=sl_svn7768_3383
><td class="source"> // for a single line, need to add textAscent to y<br></td></tr
><tr
id=sl_svn7768_3384
><td class="source"> // for multiple lines, no different<br></td></tr
><tr
id=sl_svn7768_3385
><td class="source"> y += textAscent();<br></td></tr
><tr
id=sl_svn7768_3386
><td class="source"> } else if (textAlignY == BOTTOM) {<br></td></tr
><tr
id=sl_svn7768_3387
><td class="source"> // for a single line, this is just offset by the descent<br></td></tr
><tr
id=sl_svn7768_3388
><td class="source"> // for multiple lines, subtract leading for each line<br></td></tr
><tr
id=sl_svn7768_3389
><td class="source"> y -= textDescent() + high;<br></td></tr
><tr
id=sl_svn7768_3390
><td class="source"> //} else if (textAlignY == BASELINE) {<br></td></tr
><tr
id=sl_svn7768_3391
><td class="source"> // do nothing<br></td></tr
><tr
id=sl_svn7768_3392
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3393
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3394
><td class="source">// int start = 0;<br></td></tr
><tr
id=sl_svn7768_3395
><td class="source"> int index = 0;<br></td></tr
><tr
id=sl_svn7768_3396
><td class="source"> while (index &lt; stop) { //length) {<br></td></tr
><tr
id=sl_svn7768_3397
><td class="source"> if (chars[index] == &#39;\n&#39;) {<br></td></tr
><tr
id=sl_svn7768_3398
><td class="source"> textLineAlignImpl(chars, start, index, x, y);<br></td></tr
><tr
id=sl_svn7768_3399
><td class="source"> start = index + 1;<br></td></tr
><tr
id=sl_svn7768_3400
><td class="source"> y += textLeading;<br></td></tr
><tr
id=sl_svn7768_3401
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3402
><td class="source"> index++;<br></td></tr
><tr
id=sl_svn7768_3403
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3404
><td class="source"> if (start &lt; stop) { //length) {<br></td></tr
><tr
id=sl_svn7768_3405
><td class="source"> textLineAlignImpl(chars, start, index, x, y);<br></td></tr
><tr
id=sl_svn7768_3406
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3407
><td class="source"> if (textMode == SCREEN) updatePixels();<br></td></tr
><tr
id=sl_svn7768_3408
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3409
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3410
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3411
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3412
><td class="source"> * Same as above but with a z coordinate.<br></td></tr
><tr
id=sl_svn7768_3413
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3414
><td class="source"> public void text(String str, float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3415
><td class="source"> if (z != 0) translate(0, 0, z); // slow!<br></td></tr
><tr
id=sl_svn7768_3416
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3417
><td class="source"> text(str, x, y);<br></td></tr
><tr
id=sl_svn7768_3418
><td class="source"> textZ = z;<br></td></tr
><tr
id=sl_svn7768_3419
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3420
><td class="source"> if (z != 0) translate(0, 0, -z); // inaccurate!<br></td></tr
><tr
id=sl_svn7768_3421
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3422
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3423
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3424
><td class="source"> public void text(char[] chars, int start, int stop,<br></td></tr
><tr
id=sl_svn7768_3425
><td class="source"> float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3426
><td class="source"> if (z != 0) translate(0, 0, z); // slow!<br></td></tr
><tr
id=sl_svn7768_3427
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3428
><td class="source"> text(chars, start, stop, x, y);<br></td></tr
><tr
id=sl_svn7768_3429
><td class="source"> textZ = z;<br></td></tr
><tr
id=sl_svn7768_3430
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3431
><td class="source"> if (z != 0) translate(0, 0, -z); // inaccurate!<br></td></tr
><tr
id=sl_svn7768_3432
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3433
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3434
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3435
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3436
><td class="source"> * Draw text in a box that is constrained to a particular size.<br></td></tr
><tr
id=sl_svn7768_3437
><td class="source"> * The current rectMode() determines what the coordinates mean<br></td></tr
><tr
id=sl_svn7768_3438
><td class="source"> * (whether x1/y1/x2/y2 or x/y/w/h).<br></td></tr
><tr
id=sl_svn7768_3439
><td class="source"> * &lt;P/&gt;<br></td></tr
><tr
id=sl_svn7768_3440
><td class="source"> * Note that the x,y coords of the start of the box<br></td></tr
><tr
id=sl_svn7768_3441
><td class="source"> * will align with the *ascent* of the text, not the baseline,<br></td></tr
><tr
id=sl_svn7768_3442
><td class="source"> * as is the case for the other text() functions.<br></td></tr
><tr
id=sl_svn7768_3443
><td class="source"> * &lt;P/&gt;<br></td></tr
><tr
id=sl_svn7768_3444
><td class="source"> * Newlines that are \n (Unix newline or linefeed char, ascii 10)<br></td></tr
><tr
id=sl_svn7768_3445
><td class="source"> * are honored, and \r (carriage return, Windows and Mac OS) are<br></td></tr
><tr
id=sl_svn7768_3446
><td class="source"> * ignored.<br></td></tr
><tr
id=sl_svn7768_3447
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3448
><td class="source"> public void text(String str, float x1, float y1, float x2, float y2) {<br></td></tr
><tr
id=sl_svn7768_3449
><td class="source"> if (textFont == null) {<br></td></tr
><tr
id=sl_svn7768_3450
><td class="source"> defaultFontOrDeath(&quot;text&quot;);<br></td></tr
><tr
id=sl_svn7768_3451
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3452
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3453
><td class="source"> if (textMode == SCREEN) loadPixels();<br></td></tr
><tr
id=sl_svn7768_3454
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3455
><td class="source"> float hradius, vradius;<br></td></tr
><tr
id=sl_svn7768_3456
><td class="source"> switch (rectMode) {<br></td></tr
><tr
id=sl_svn7768_3457
><td class="source"> case CORNER:<br></td></tr
><tr
id=sl_svn7768_3458
><td class="source"> x2 += x1; y2 += y1;<br></td></tr
><tr
id=sl_svn7768_3459
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_3460
><td class="source"> case RADIUS:<br></td></tr
><tr
id=sl_svn7768_3461
><td class="source"> hradius = x2;<br></td></tr
><tr
id=sl_svn7768_3462
><td class="source"> vradius = y2;<br></td></tr
><tr
id=sl_svn7768_3463
><td class="source"> x2 = x1 + hradius;<br></td></tr
><tr
id=sl_svn7768_3464
><td class="source"> y2 = y1 + vradius;<br></td></tr
><tr
id=sl_svn7768_3465
><td class="source"> x1 -= hradius;<br></td></tr
><tr
id=sl_svn7768_3466
><td class="source"> y1 -= vradius;<br></td></tr
><tr
id=sl_svn7768_3467
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_3468
><td class="source"> case CENTER:<br></td></tr
><tr
id=sl_svn7768_3469
><td class="source"> hradius = x2 / 2.0f;<br></td></tr
><tr
id=sl_svn7768_3470
><td class="source"> vradius = y2 / 2.0f;<br></td></tr
><tr
id=sl_svn7768_3471
><td class="source"> x2 = x1 + hradius;<br></td></tr
><tr
id=sl_svn7768_3472
><td class="source"> y2 = y1 + vradius;<br></td></tr
><tr
id=sl_svn7768_3473
><td class="source"> x1 -= hradius;<br></td></tr
><tr
id=sl_svn7768_3474
><td class="source"> y1 -= vradius;<br></td></tr
><tr
id=sl_svn7768_3475
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3476
><td class="source"> if (x2 &lt; x1) {<br></td></tr
><tr
id=sl_svn7768_3477
><td class="source"> float temp = x1; x1 = x2; x2 = temp;<br></td></tr
><tr
id=sl_svn7768_3478
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3479
><td class="source"> if (y2 &lt; y1) {<br></td></tr
><tr
id=sl_svn7768_3480
><td class="source"> float temp = y1; y1 = y2; y2 = temp;<br></td></tr
><tr
id=sl_svn7768_3481
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3482
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3483
><td class="source">// float currentY = y1;<br></td></tr
><tr
id=sl_svn7768_3484
><td class="source"> float boxWidth = x2 - x1;<br></td></tr
><tr
id=sl_svn7768_3485
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3486
><td class="source">// // ala illustrator, the text itself must fit inside the box<br></td></tr
><tr
id=sl_svn7768_3487
><td class="source">// currentY += textAscent(); //ascent() * textSize;<br></td></tr
><tr
id=sl_svn7768_3488
><td class="source">// // if the box is already too small, tell em to f off<br></td></tr
><tr
id=sl_svn7768_3489
><td class="source">// if (currentY &gt; y2) return;<br></td></tr
><tr
id=sl_svn7768_3490
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3491
><td class="source"> float spaceWidth = textWidth(&#39; &#39;);<br></td></tr
><tr
id=sl_svn7768_3492
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3493
><td class="source"> if (textBreakStart == null) {<br></td></tr
><tr
id=sl_svn7768_3494
><td class="source"> textBreakStart = new int[20];<br></td></tr
><tr
id=sl_svn7768_3495
><td class="source"> textBreakStop = new int[20];<br></td></tr
><tr
id=sl_svn7768_3496
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3497
><td class="source"> textBreakCount = 0;<br></td></tr
><tr
id=sl_svn7768_3498
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3499
><td class="source"> int length = str.length();<br></td></tr
><tr
id=sl_svn7768_3500
><td class="source"> if (length + 1 &gt; textBuffer.length) {<br></td></tr
><tr
id=sl_svn7768_3501
><td class="source"> textBuffer = new char[length + 1];<br></td></tr
><tr
id=sl_svn7768_3502
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3503
><td class="source"> str.getChars(0, length, textBuffer, 0);<br></td></tr
><tr
id=sl_svn7768_3504
><td class="source"> // add a fake newline to simplify calculations<br></td></tr
><tr
id=sl_svn7768_3505
><td class="source"> textBuffer[length++] = &#39;\n&#39;;<br></td></tr
><tr
id=sl_svn7768_3506
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3507
><td class="source"> int sentenceStart = 0;<br></td></tr
><tr
id=sl_svn7768_3508
><td class="source"> for (int i = 0; i &lt; length; i++) {<br></td></tr
><tr
id=sl_svn7768_3509
><td class="source"> if (textBuffer[i] == &#39;\n&#39;) {<br></td></tr
><tr
id=sl_svn7768_3510
><td class="source">// currentY = textSentence(textBuffer, sentenceStart, i,<br></td></tr
><tr
id=sl_svn7768_3511
><td class="source">// lineX, boxWidth, currentY, y2, spaceWidth);<br></td></tr
><tr
id=sl_svn7768_3512
><td class="source"> boolean legit =<br></td></tr
><tr
id=sl_svn7768_3513
><td class="source"> textSentence(textBuffer, sentenceStart, i, boxWidth, spaceWidth);<br></td></tr
><tr
id=sl_svn7768_3514
><td class="source"> if (!legit) break;<br></td></tr
><tr
id=sl_svn7768_3515
><td class="source">// if (Float.isNaN(currentY)) break; // word too big (or error)<br></td></tr
><tr
id=sl_svn7768_3516
><td class="source">// if (currentY &gt; y2) break; // past the box<br></td></tr
><tr
id=sl_svn7768_3517
><td class="source"> sentenceStart = i + 1;<br></td></tr
><tr
id=sl_svn7768_3518
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3519
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3520
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3521
><td class="source"> // lineX is the position where the text starts, which is adjusted<br></td></tr
><tr
id=sl_svn7768_3522
><td class="source"> // to left/center/right based on the current textAlign<br></td></tr
><tr
id=sl_svn7768_3523
><td class="source"> float lineX = x1; //boxX1;<br></td></tr
><tr
id=sl_svn7768_3524
><td class="source"> if (textAlign == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3525
><td class="source"> lineX = lineX + boxWidth/2f;<br></td></tr
><tr
id=sl_svn7768_3526
><td class="source"> } else if (textAlign == RIGHT) {<br></td></tr
><tr
id=sl_svn7768_3527
><td class="source"> lineX = x2; //boxX2;<br></td></tr
><tr
id=sl_svn7768_3528
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3529
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3530
><td class="source"> float boxHeight = y2 - y1;<br></td></tr
><tr
id=sl_svn7768_3531
><td class="source"> //int lineFitCount = 1 + PApplet.floor((boxHeight - textAscent()) / textLeading);<br></td></tr
><tr
id=sl_svn7768_3532
><td class="source"> // incorporate textAscent() for the top (baseline will be y1 + ascent)<br></td></tr
><tr
id=sl_svn7768_3533
><td class="source"> // and textDescent() for the bottom, so that lower parts of letters aren&#39;t<br></td></tr
><tr
id=sl_svn7768_3534
><td class="source"> // outside the box. [0151]<br></td></tr
><tr
id=sl_svn7768_3535
><td class="source"> float topAndBottom = textAscent() + textDescent();<br></td></tr
><tr
id=sl_svn7768_3536
><td class="source"> int lineFitCount = 1 + PApplet.floor((boxHeight - topAndBottom) / textLeading);<br></td></tr
><tr
id=sl_svn7768_3537
><td class="source"> int lineCount = Math.min(textBreakCount, lineFitCount);<br></td></tr
><tr
id=sl_svn7768_3538
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3539
><td class="source"> if (textAlignY == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3540
><td class="source"> float lineHigh = textAscent() + textLeading * (lineCount - 1);<br></td></tr
><tr
id=sl_svn7768_3541
><td class="source"> float y = y1 + textAscent() + (boxHeight - lineHigh) / 2;<br></td></tr
><tr
id=sl_svn7768_3542
><td class="source"> for (int i = 0; i &lt; lineCount; i++) {<br></td></tr
><tr
id=sl_svn7768_3543
><td class="source"> textLineAlignImpl(textBuffer, textBreakStart[i], textBreakStop[i], lineX, y);<br></td></tr
><tr
id=sl_svn7768_3544
><td class="source"> y += textLeading;<br></td></tr
><tr
id=sl_svn7768_3545
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3546
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3547
><td class="source"> } else if (textAlignY == BOTTOM) {<br></td></tr
><tr
id=sl_svn7768_3548
><td class="source"> float y = y2 - textDescent() - textLeading * (lineCount - 1);<br></td></tr
><tr
id=sl_svn7768_3549
><td class="source"> for (int i = 0; i &lt; lineCount; i++) {<br></td></tr
><tr
id=sl_svn7768_3550
><td class="source"> textLineAlignImpl(textBuffer, textBreakStart[i], textBreakStop[i], lineX, y);<br></td></tr
><tr
id=sl_svn7768_3551
><td class="source"> y += textLeading;<br></td></tr
><tr
id=sl_svn7768_3552
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3553
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3554
><td class="source"> } else { // TOP or BASELINE just go to the default<br></td></tr
><tr
id=sl_svn7768_3555
><td class="source"> float y = y1 + textAscent();<br></td></tr
><tr
id=sl_svn7768_3556
><td class="source"> for (int i = 0; i &lt; lineCount; i++) {<br></td></tr
><tr
id=sl_svn7768_3557
><td class="source"> textLineAlignImpl(textBuffer, textBreakStart[i], textBreakStop[i], lineX, y);<br></td></tr
><tr
id=sl_svn7768_3558
><td class="source"> y += textLeading;<br></td></tr
><tr
id=sl_svn7768_3559
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3560
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3561
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3562
><td class="source"> if (textMode == SCREEN) updatePixels();<br></td></tr
><tr
id=sl_svn7768_3563
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3564
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3565
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3566
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3567
><td class="source"> * Emit a sentence of text, defined as a chunk of text without any newlines.<br></td></tr
><tr
id=sl_svn7768_3568
><td class="source"> * @param stop non-inclusive, the end of the text in question<br></td></tr
><tr
id=sl_svn7768_3569
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3570
><td class="source"> protected boolean textSentence(char[] buffer, int start, int stop,<br></td></tr
><tr
id=sl_svn7768_3571
><td class="source"> float boxWidth, float spaceWidth) {<br></td></tr
><tr
id=sl_svn7768_3572
><td class="source"> float runningX = 0;<br></td></tr
><tr
id=sl_svn7768_3573
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3574
><td class="source"> // Keep track of this separately from index, since we&#39;ll need to back up<br></td></tr
><tr
id=sl_svn7768_3575
><td class="source"> // from index when breaking words that are too long to fit.<br></td></tr
><tr
id=sl_svn7768_3576
><td class="source"> int lineStart = start;<br></td></tr
><tr
id=sl_svn7768_3577
><td class="source"> int wordStart = start;<br></td></tr
><tr
id=sl_svn7768_3578
><td class="source"> int index = start;<br></td></tr
><tr
id=sl_svn7768_3579
><td class="source"> while (index &lt;= stop) {<br></td></tr
><tr
id=sl_svn7768_3580
><td class="source"> // boundary of a word or end of this sentence<br></td></tr
><tr
id=sl_svn7768_3581
><td class="source"> if ((buffer[index] == &#39; &#39;) || (index == stop)) {<br></td></tr
><tr
id=sl_svn7768_3582
><td class="source"> float wordWidth = textWidthImpl(buffer, wordStart, index);<br></td></tr
><tr
id=sl_svn7768_3583
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3584
><td class="source"> if (runningX + wordWidth &gt; boxWidth) {<br></td></tr
><tr
id=sl_svn7768_3585
><td class="source"> if (runningX != 0) {<br></td></tr
><tr
id=sl_svn7768_3586
><td class="source"> // Next word is too big, output the current line and advance<br></td></tr
><tr
id=sl_svn7768_3587
><td class="source"> index = wordStart;<br></td></tr
><tr
id=sl_svn7768_3588
><td class="source"> textSentenceBreak(lineStart, index);<br></td></tr
><tr
id=sl_svn7768_3589
><td class="source"> // Eat whitespace because multiple spaces don&#39;t count for s*<br></td></tr
><tr
id=sl_svn7768_3590
><td class="source"> // when they&#39;re at the end of a line.<br></td></tr
><tr
id=sl_svn7768_3591
><td class="source"> while ((index &lt; stop) &amp;&amp; (buffer[index] == &#39; &#39;)) {<br></td></tr
><tr
id=sl_svn7768_3592
><td class="source"> index++;<br></td></tr
><tr
id=sl_svn7768_3593
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3594
><td class="source"> } else { // (runningX == 0)<br></td></tr
><tr
id=sl_svn7768_3595
><td class="source"> // If this is the first word on the line, and its width is greater<br></td></tr
><tr
id=sl_svn7768_3596
><td class="source"> // than the width of the text box, then break the word where at the<br></td></tr
><tr
id=sl_svn7768_3597
><td class="source"> // max width, and send the rest of the word to the next line.<br></td></tr
><tr
id=sl_svn7768_3598
><td class="source"> do {<br></td></tr
><tr
id=sl_svn7768_3599
><td class="source"> index--;<br></td></tr
><tr
id=sl_svn7768_3600
><td class="source"> if (index == wordStart) {<br></td></tr
><tr
id=sl_svn7768_3601
><td class="source"> // Not a single char will fit on this line. screw &#39;em.<br></td></tr
><tr
id=sl_svn7768_3602
><td class="source"> //System.out.println(&quot;screw you&quot;);<br></td></tr
><tr
id=sl_svn7768_3603
><td class="source"> return false; //Float.NaN;<br></td></tr
><tr
id=sl_svn7768_3604
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3605
><td class="source"> wordWidth = textWidthImpl(buffer, wordStart, index);<br></td></tr
><tr
id=sl_svn7768_3606
><td class="source"> } while (wordWidth &gt; boxWidth);<br></td></tr
><tr
id=sl_svn7768_3607
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3608
><td class="source"> //textLineImpl(buffer, lineStart, index, x, y);<br></td></tr
><tr
id=sl_svn7768_3609
><td class="source"> textSentenceBreak(lineStart, index);<br></td></tr
><tr
id=sl_svn7768_3610
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3611
><td class="source"> lineStart = index;<br></td></tr
><tr
id=sl_svn7768_3612
><td class="source"> wordStart = index;<br></td></tr
><tr
id=sl_svn7768_3613
><td class="source"> runningX = 0;<br></td></tr
><tr
id=sl_svn7768_3614
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3615
><td class="source"> } else if (index == stop) {<br></td></tr
><tr
id=sl_svn7768_3616
><td class="source"> // last line in the block, time to unload<br></td></tr
><tr
id=sl_svn7768_3617
><td class="source"> //textLineImpl(buffer, lineStart, index, x, y);<br></td></tr
><tr
id=sl_svn7768_3618
><td class="source"> textSentenceBreak(lineStart, index);<br></td></tr
><tr
id=sl_svn7768_3619
><td class="source">// y += textLeading;<br></td></tr
><tr
id=sl_svn7768_3620
><td class="source"> index++;<br></td></tr
><tr
id=sl_svn7768_3621
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3622
><td class="source"> } else { // this word will fit, just add it to the line<br></td></tr
><tr
id=sl_svn7768_3623
><td class="source"> runningX += wordWidth + spaceWidth;<br></td></tr
><tr
id=sl_svn7768_3624
><td class="source"> wordStart = index + 1; // move on to the next word<br></td></tr
><tr
id=sl_svn7768_3625
><td class="source"> index++;<br></td></tr
><tr
id=sl_svn7768_3626
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3627
><td class="source"> } else { // not a space or the last character<br></td></tr
><tr
id=sl_svn7768_3628
><td class="source"> index++; // this is just another letter<br></td></tr
><tr
id=sl_svn7768_3629
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3630
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3631
><td class="source">// return y;<br></td></tr
><tr
id=sl_svn7768_3632
><td class="source"> return true;<br></td></tr
><tr
id=sl_svn7768_3633
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3634
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3635
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3636
><td class="source"> protected void textSentenceBreak(int start, int stop) {<br></td></tr
><tr
id=sl_svn7768_3637
><td class="source"> if (textBreakCount == textBreakStart.length) {<br></td></tr
><tr
id=sl_svn7768_3638
><td class="source"> textBreakStart = PApplet.expand(textBreakStart);<br></td></tr
><tr
id=sl_svn7768_3639
><td class="source"> textBreakStop = PApplet.expand(textBreakStop);<br></td></tr
><tr
id=sl_svn7768_3640
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3641
><td class="source"> textBreakStart[textBreakCount] = start;<br></td></tr
><tr
id=sl_svn7768_3642
><td class="source"> textBreakStop[textBreakCount] = stop;<br></td></tr
><tr
id=sl_svn7768_3643
><td class="source"> textBreakCount++;<br></td></tr
><tr
id=sl_svn7768_3644
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3645
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3646
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3647
><td class="source"> public void text(String s, float x1, float y1, float x2, float y2, float z) {<br></td></tr
><tr
id=sl_svn7768_3648
><td class="source"> if (z != 0) translate(0, 0, z); // slowness, badness<br></td></tr
><tr
id=sl_svn7768_3649
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3650
><td class="source"> text(s, x1, y1, x2, y2);<br></td></tr
><tr
id=sl_svn7768_3651
><td class="source"> textZ = z;<br></td></tr
><tr
id=sl_svn7768_3652
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3653
><td class="source"> if (z != 0) translate(0, 0, -z); // TEMPORARY HACK! SLOW!<br></td></tr
><tr
id=sl_svn7768_3654
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3655
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3656
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3657
><td class="source"> public void text(int num, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3658
><td class="source"> text(String.valueOf(num), x, y);<br></td></tr
><tr
id=sl_svn7768_3659
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3660
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3661
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3662
><td class="source"> public void text(int num, float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3663
><td class="source"> text(String.valueOf(num), x, y, z);<br></td></tr
><tr
id=sl_svn7768_3664
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3665
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3666
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3667
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3668
><td class="source"> * This does a basic number formatting, to avoid the<br></td></tr
><tr
id=sl_svn7768_3669
><td class="source"> * generally ugly appearance of printing floats.<br></td></tr
><tr
id=sl_svn7768_3670
><td class="source"> * Users who want more control should use their own nf() cmmand,<br></td></tr
><tr
id=sl_svn7768_3671
><td class="source"> * or if they want the long, ugly version of float,<br></td></tr
><tr
id=sl_svn7768_3672
><td class="source"> * use String.valueOf() to convert the float to a String first.<br></td></tr
><tr
id=sl_svn7768_3673
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3674
><td class="source"> public void text(float num, float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3675
><td class="source"> text(PApplet.nfs(num, 0, 3), x, y);<br></td></tr
><tr
id=sl_svn7768_3676
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3677
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3678
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3679
><td class="source"> public void text(float num, float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3680
><td class="source"> text(PApplet.nfs(num, 0, 3), x, y, z);<br></td></tr
><tr
id=sl_svn7768_3681
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3682
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3683
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3684
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3685
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_3686
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3687
><td class="source"> // TEXT IMPL<br></td></tr
><tr
id=sl_svn7768_3688
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3689
><td class="source"> // These are most likely to be overridden by subclasses, since the other<br></td></tr
><tr
id=sl_svn7768_3690
><td class="source"> // (public) functions handle generic features like setting alignment.<br></td></tr
><tr
id=sl_svn7768_3691
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3692
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3693
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3694
><td class="source"> * Handles placement of a text line, then calls textLineImpl<br></td></tr
><tr
id=sl_svn7768_3695
><td class="source"> * to actually render at the specific point.<br></td></tr
><tr
id=sl_svn7768_3696
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3697
><td class="source"> protected void textLineAlignImpl(char buffer[], int start, int stop,<br></td></tr
><tr
id=sl_svn7768_3698
><td class="source"> float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3699
><td class="source"> if (textAlign == CENTER) {<br></td></tr
><tr
id=sl_svn7768_3700
><td class="source"> x -= textWidthImpl(buffer, start, stop) / 2f;<br></td></tr
><tr
id=sl_svn7768_3701
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3702
><td class="source"> } else if (textAlign == RIGHT) {<br></td></tr
><tr
id=sl_svn7768_3703
><td class="source"> x -= textWidthImpl(buffer, start, stop);<br></td></tr
><tr
id=sl_svn7768_3704
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3705
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3706
><td class="source"> textLineImpl(buffer, start, stop, x, y);<br></td></tr
><tr
id=sl_svn7768_3707
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3708
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3709
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3710
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3711
><td class="source"> * Implementation of actual drawing for a line of text.<br></td></tr
><tr
id=sl_svn7768_3712
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3713
><td class="source"> protected void textLineImpl(char buffer[], int start, int stop,<br></td></tr
><tr
id=sl_svn7768_3714
><td class="source"> float x, float y) {<br></td></tr
><tr
id=sl_svn7768_3715
><td class="source"> for (int index = start; index &lt; stop; index++) {<br></td></tr
><tr
id=sl_svn7768_3716
><td class="source"> textCharImpl(buffer[index], x, y);<br></td></tr
><tr
id=sl_svn7768_3717
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3718
><td class="source"> // this doesn&#39;t account for kerning<br></td></tr
><tr
id=sl_svn7768_3719
><td class="source"> x += textWidth(buffer[index]);<br></td></tr
><tr
id=sl_svn7768_3720
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3721
><td class="source"> textX = x;<br></td></tr
><tr
id=sl_svn7768_3722
><td class="source"> textY = y;<br></td></tr
><tr
id=sl_svn7768_3723
><td class="source"> textZ = 0; // this will get set by the caller if non-zero<br></td></tr
><tr
id=sl_svn7768_3724
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3725
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3726
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3727
><td class="source"> protected void textCharImpl(char ch, float x, float y) { //, float z) {<br></td></tr
><tr
id=sl_svn7768_3728
><td class="source"> PFont.Glyph glyph = textFont.getGlyph(ch);<br></td></tr
><tr
id=sl_svn7768_3729
><td class="source"> if (glyph != null) {<br></td></tr
><tr
id=sl_svn7768_3730
><td class="source"> if (textMode == MODEL) {<br></td></tr
><tr
id=sl_svn7768_3731
><td class="source"> float high = glyph.height / (float) textFont.size;<br></td></tr
><tr
id=sl_svn7768_3732
><td class="source"> float bwidth = glyph.width / (float) textFont.size;<br></td></tr
><tr
id=sl_svn7768_3733
><td class="source"> float lextent = glyph.leftExtent / (float) textFont.size;<br></td></tr
><tr
id=sl_svn7768_3734
><td class="source"> float textent = glyph.topExtent / (float) textFont.size;<br></td></tr
><tr
id=sl_svn7768_3735
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3736
><td class="source"> float x1 = x + lextent * textSize;<br></td></tr
><tr
id=sl_svn7768_3737
><td class="source"> float y1 = y - textent * textSize;<br></td></tr
><tr
id=sl_svn7768_3738
><td class="source"> float x2 = x1 + bwidth * textSize;<br></td></tr
><tr
id=sl_svn7768_3739
><td class="source"> float y2 = y1 + high * textSize;<br></td></tr
><tr
id=sl_svn7768_3740
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3741
><td class="source"> textCharModelImpl(glyph.image,<br></td></tr
><tr
id=sl_svn7768_3742
><td class="source"> x1, y1, x2, y2,<br></td></tr
><tr
id=sl_svn7768_3743
><td class="source"> glyph.width, glyph.height);<br></td></tr
><tr
id=sl_svn7768_3744
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3745
><td class="source"> } else if (textMode == SCREEN) {<br></td></tr
><tr
id=sl_svn7768_3746
><td class="source"> int xx = (int) x + glyph.leftExtent;<br></td></tr
><tr
id=sl_svn7768_3747
><td class="source"> int yy = (int) y - glyph.topExtent;<br></td></tr
><tr
id=sl_svn7768_3748
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3749
><td class="source"> int w0 = glyph.width;<br></td></tr
><tr
id=sl_svn7768_3750
><td class="source"> int h0 = glyph.height;<br></td></tr
><tr
id=sl_svn7768_3751
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3752
><td class="source"> textCharScreenImpl(glyph.image, xx, yy, w0, h0);<br></td></tr
><tr
id=sl_svn7768_3753
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3754
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3755
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3756
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3757
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3758
><td class="source"> protected void textCharModelImpl(PImage glyph,<br></td></tr
><tr
id=sl_svn7768_3759
><td class="source"> float x1, float y1, //float z1,<br></td></tr
><tr
id=sl_svn7768_3760
><td class="source"> float x2, float y2, //float z2,<br></td></tr
><tr
id=sl_svn7768_3761
><td class="source"> int u2, int v2) {<br></td></tr
><tr
id=sl_svn7768_3762
><td class="source"> boolean savedTint = tint;<br></td></tr
><tr
id=sl_svn7768_3763
><td class="source"> int savedTintColor = tintColor;<br></td></tr
><tr
id=sl_svn7768_3764
><td class="source"> float savedTintR = tintR;<br></td></tr
><tr
id=sl_svn7768_3765
><td class="source"> float savedTintG = tintG;<br></td></tr
><tr
id=sl_svn7768_3766
><td class="source"> float savedTintB = tintB;<br></td></tr
><tr
id=sl_svn7768_3767
><td class="source"> float savedTintA = tintA;<br></td></tr
><tr
id=sl_svn7768_3768
><td class="source"> boolean savedTintAlpha = tintAlpha;<br></td></tr
><tr
id=sl_svn7768_3769
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3770
><td class="source"> tint = true;<br></td></tr
><tr
id=sl_svn7768_3771
><td class="source"> tintColor = fillColor;<br></td></tr
><tr
id=sl_svn7768_3772
><td class="source"> tintR = fillR;<br></td></tr
><tr
id=sl_svn7768_3773
><td class="source"> tintG = fillG;<br></td></tr
><tr
id=sl_svn7768_3774
><td class="source"> tintB = fillB;<br></td></tr
><tr
id=sl_svn7768_3775
><td class="source"> tintA = fillA;<br></td></tr
><tr
id=sl_svn7768_3776
><td class="source"> tintAlpha = fillAlpha;<br></td></tr
><tr
id=sl_svn7768_3777
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3778
><td class="source"> imageImpl(glyph, x1, y1, x2, y2, 0, 0, u2, v2);<br></td></tr
><tr
id=sl_svn7768_3779
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3780
><td class="source"> tint = savedTint;<br></td></tr
><tr
id=sl_svn7768_3781
><td class="source"> tintColor = savedTintColor;<br></td></tr
><tr
id=sl_svn7768_3782
><td class="source"> tintR = savedTintR;<br></td></tr
><tr
id=sl_svn7768_3783
><td class="source"> tintG = savedTintG;<br></td></tr
><tr
id=sl_svn7768_3784
><td class="source"> tintB = savedTintB;<br></td></tr
><tr
id=sl_svn7768_3785
><td class="source"> tintA = savedTintA;<br></td></tr
><tr
id=sl_svn7768_3786
><td class="source"> tintAlpha = savedTintAlpha;<br></td></tr
><tr
id=sl_svn7768_3787
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3788
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3789
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3790
><td class="source"> protected void textCharScreenImpl(PImage glyph,<br></td></tr
><tr
id=sl_svn7768_3791
><td class="source"> int xx, int yy,<br></td></tr
><tr
id=sl_svn7768_3792
><td class="source"> int w0, int h0) {<br></td></tr
><tr
id=sl_svn7768_3793
><td class="source"> int x0 = 0;<br></td></tr
><tr
id=sl_svn7768_3794
><td class="source"> int y0 = 0;<br></td></tr
><tr
id=sl_svn7768_3795
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3796
><td class="source"> if ((xx &gt;= width) || (yy &gt;= height) ||<br></td></tr
><tr
id=sl_svn7768_3797
><td class="source"> (xx + w0 &lt; 0) || (yy + h0 &lt; 0)) return;<br></td></tr
><tr
id=sl_svn7768_3798
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3799
><td class="source"> if (xx &lt; 0) {<br></td></tr
><tr
id=sl_svn7768_3800
><td class="source"> x0 -= xx;<br></td></tr
><tr
id=sl_svn7768_3801
><td class="source"> w0 += xx;<br></td></tr
><tr
id=sl_svn7768_3802
><td class="source"> xx = 0;<br></td></tr
><tr
id=sl_svn7768_3803
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3804
><td class="source"> if (yy &lt; 0) {<br></td></tr
><tr
id=sl_svn7768_3805
><td class="source"> y0 -= yy;<br></td></tr
><tr
id=sl_svn7768_3806
><td class="source"> h0 += yy;<br></td></tr
><tr
id=sl_svn7768_3807
><td class="source"> yy = 0;<br></td></tr
><tr
id=sl_svn7768_3808
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3809
><td class="source"> if (xx + w0 &gt; width) {<br></td></tr
><tr
id=sl_svn7768_3810
><td class="source"> w0 -= ((xx + w0) - width);<br></td></tr
><tr
id=sl_svn7768_3811
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3812
><td class="source"> if (yy + h0 &gt; height) {<br></td></tr
><tr
id=sl_svn7768_3813
><td class="source"> h0 -= ((yy + h0) - height);<br></td></tr
><tr
id=sl_svn7768_3814
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3815
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3816
><td class="source"> int fr = fillRi;<br></td></tr
><tr
id=sl_svn7768_3817
><td class="source"> int fg = fillGi;<br></td></tr
><tr
id=sl_svn7768_3818
><td class="source"> int fb = fillBi;<br></td></tr
><tr
id=sl_svn7768_3819
><td class="source"> int fa = fillAi;<br></td></tr
><tr
id=sl_svn7768_3820
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3821
><td class="source"> int pixels1[] = glyph.pixels; //images[glyph].pixels;<br></td></tr
><tr
id=sl_svn7768_3822
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3823
><td class="source"> // TODO this can be optimized a bit<br></td></tr
><tr
id=sl_svn7768_3824
><td class="source"> for (int row = y0; row &lt; y0 + h0; row++) {<br></td></tr
><tr
id=sl_svn7768_3825
><td class="source"> for (int col = x0; col &lt; x0 + w0; col++) {<br></td></tr
><tr
id=sl_svn7768_3826
><td class="source"> //int a1 = (fa * pixels1[row * textFont.twidth + col]) &gt;&gt; 8;<br></td></tr
><tr
id=sl_svn7768_3827
><td class="source"> int a1 = (fa * pixels1[row * glyph.width + col]) &gt;&gt; 8;<br></td></tr
><tr
id=sl_svn7768_3828
><td class="source"> int a2 = a1 ^ 0xff;<br></td></tr
><tr
id=sl_svn7768_3829
><td class="source"> //int p1 = pixels1[row * glyph.width + col];<br></td></tr
><tr
id=sl_svn7768_3830
><td class="source"> int p2 = pixels[(yy + row-y0)*width + (xx+col-x0)];<br></td></tr
><tr
id=sl_svn7768_3831
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3832
><td class="source"> pixels[(yy + row-y0)*width + xx+col-x0] =<br></td></tr
><tr
id=sl_svn7768_3833
><td class="source"> (0xff000000 |<br></td></tr
><tr
id=sl_svn7768_3834
><td class="source"> (((a1 * fr + a2 * ((p2 &gt;&gt; 16) &amp; 0xff)) &amp; 0xff00) &lt;&lt; 8) |<br></td></tr
><tr
id=sl_svn7768_3835
><td class="source"> (( a1 * fg + a2 * ((p2 &gt;&gt; 8) &amp; 0xff)) &amp; 0xff00) |<br></td></tr
><tr
id=sl_svn7768_3836
><td class="source"> (( a1 * fb + a2 * ( p2 &amp; 0xff)) &gt;&gt; 8));<br></td></tr
><tr
id=sl_svn7768_3837
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3838
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3839
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3840
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3841
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3842
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3843
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_3844
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3845
><td class="source"> // MATRIX STACK<br></td></tr
><tr
id=sl_svn7768_3846
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3847
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3848
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3849
><td class="source"> * Push a copy of the current transformation matrix onto the stack.<br></td></tr
><tr
id=sl_svn7768_3850
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3851
><td class="source"> public void pushMatrix() {<br></td></tr
><tr
id=sl_svn7768_3852
><td class="source"> showMethodWarning(&quot;pushMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_3853
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3854
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3855
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3856
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3857
><td class="source"> * Replace the current transformation matrix with the top of the stack.<br></td></tr
><tr
id=sl_svn7768_3858
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3859
><td class="source"> public void popMatrix() {<br></td></tr
><tr
id=sl_svn7768_3860
><td class="source"> showMethodWarning(&quot;popMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_3861
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3862
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3863
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3864
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3865
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_3866
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3867
><td class="source"> // MATRIX TRANSFORMATIONS<br></td></tr
><tr
id=sl_svn7768_3868
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3869
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3870
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3871
><td class="source"> * Translate in X and Y.<br></td></tr
><tr
id=sl_svn7768_3872
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3873
><td class="source"> public void translate(float tx, float ty) {<br></td></tr
><tr
id=sl_svn7768_3874
><td class="source"> showMissingWarning(&quot;translate&quot;);<br></td></tr
><tr
id=sl_svn7768_3875
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3876
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3877
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3878
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3879
><td class="source"> * Translate in X, Y, and Z.<br></td></tr
><tr
id=sl_svn7768_3880
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3881
><td class="source"> public void translate(float tx, float ty, float tz) {<br></td></tr
><tr
id=sl_svn7768_3882
><td class="source"> showMissingWarning(&quot;translate&quot;);<br></td></tr
><tr
id=sl_svn7768_3883
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3884
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3885
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3886
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3887
><td class="source"> * Two dimensional rotation.<br></td></tr
><tr
id=sl_svn7768_3888
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_3889
><td class="source"> * Same as rotateZ (this is identical to a 3D rotation along the z-axis)<br></td></tr
><tr
id=sl_svn7768_3890
><td class="source"> * but included for clarity. It&#39;d be weird for people drawing 2D graphics<br></td></tr
><tr
id=sl_svn7768_3891
><td class="source"> * to be using rotateZ. And they might kick our a-- for the confusion.<br></td></tr
><tr
id=sl_svn7768_3892
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_3893
><td class="source"> * &lt;A HREF=&quot;http://www.xkcd.com/c184.html&quot;&gt;Additional background&lt;/A&gt;.<br></td></tr
><tr
id=sl_svn7768_3894
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3895
><td class="source"> public void rotate(float angle) {<br></td></tr
><tr
id=sl_svn7768_3896
><td class="source"> showMissingWarning(&quot;rotate&quot;);<br></td></tr
><tr
id=sl_svn7768_3897
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3898
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3899
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3900
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3901
><td class="source"> * Rotate around the X axis.<br></td></tr
><tr
id=sl_svn7768_3902
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3903
><td class="source"> public void rotateX(float angle) {<br></td></tr
><tr
id=sl_svn7768_3904
><td class="source"> showMethodWarning(&quot;rotateX&quot;);<br></td></tr
><tr
id=sl_svn7768_3905
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3906
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3907
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3908
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3909
><td class="source"> * Rotate around the Y axis.<br></td></tr
><tr
id=sl_svn7768_3910
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3911
><td class="source"> public void rotateY(float angle) {<br></td></tr
><tr
id=sl_svn7768_3912
><td class="source"> showMethodWarning(&quot;rotateY&quot;);<br></td></tr
><tr
id=sl_svn7768_3913
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3914
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3915
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3916
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3917
><td class="source"> * Rotate around the Z axis.<br></td></tr
><tr
id=sl_svn7768_3918
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_3919
><td class="source"> * The functions rotate() and rotateZ() are identical, it&#39;s just that it make<br></td></tr
><tr
id=sl_svn7768_3920
><td class="source"> * sense to have rotate() and then rotateX() and rotateY() when using 3D;<br></td></tr
><tr
id=sl_svn7768_3921
><td class="source"> * nor does it make sense to use a function called rotateZ() if you&#39;re only<br></td></tr
><tr
id=sl_svn7768_3922
><td class="source"> * doing things in 2D. so we just decided to have them both be the same.<br></td></tr
><tr
id=sl_svn7768_3923
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3924
><td class="source"> public void rotateZ(float angle) {<br></td></tr
><tr
id=sl_svn7768_3925
><td class="source"> showMethodWarning(&quot;rotateZ&quot;);<br></td></tr
><tr
id=sl_svn7768_3926
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3927
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3928
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3929
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3930
><td class="source"> * Rotate about a vector in space. Same as the glRotatef() function.<br></td></tr
><tr
id=sl_svn7768_3931
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3932
><td class="source"> public void rotate(float angle, float vx, float vy, float vz) {<br></td></tr
><tr
id=sl_svn7768_3933
><td class="source"> showMissingWarning(&quot;rotate&quot;);<br></td></tr
><tr
id=sl_svn7768_3934
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3935
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3936
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3937
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3938
><td class="source"> * Scale in all dimensions.<br></td></tr
><tr
id=sl_svn7768_3939
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3940
><td class="source"> public void scale(float s) {<br></td></tr
><tr
id=sl_svn7768_3941
><td class="source"> showMissingWarning(&quot;scale&quot;);<br></td></tr
><tr
id=sl_svn7768_3942
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3943
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3944
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3945
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3946
><td class="source"> * Scale in X and Y. Equivalent to scale(sx, sy, 1).<br></td></tr
><tr
id=sl_svn7768_3947
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_3948
><td class="source"> * Not recommended for use in 3D, because the z-dimension is just<br></td></tr
><tr
id=sl_svn7768_3949
><td class="source"> * scaled by 1, since there&#39;s no way to know what else to scale it by.<br></td></tr
><tr
id=sl_svn7768_3950
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3951
><td class="source"> public void scale(float sx, float sy) {<br></td></tr
><tr
id=sl_svn7768_3952
><td class="source"> showMissingWarning(&quot;scale&quot;);<br></td></tr
><tr
id=sl_svn7768_3953
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3954
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3955
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3956
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3957
><td class="source"> * Scale in X, Y, and Z.<br></td></tr
><tr
id=sl_svn7768_3958
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3959
><td class="source"> public void scale(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_3960
><td class="source"> showMissingWarning(&quot;scale&quot;);<br></td></tr
><tr
id=sl_svn7768_3961
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3962
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_3963
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_3964
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3965
><td class="source"> * Shear along X axis<br></td></tr
><tr
id=sl_svn7768_3966
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3967
><td class="source"> public void shearX(float angle) {<br></td></tr
><tr
id=sl_svn7768_3968
><td class="source"> showMissingWarning(&quot;shearX&quot;);<br></td></tr
><tr
id=sl_svn7768_3969
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3970
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3971
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3972
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3973
><td class="source"> * Shear along Y axis<br></td></tr
><tr
id=sl_svn7768_3974
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3975
><td class="source"> public void shearY(float angle) {<br></td></tr
><tr
id=sl_svn7768_3976
><td class="source"> showMissingWarning(&quot;shearY&quot;);<br></td></tr
><tr
id=sl_svn7768_3977
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3978
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3979
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3980
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_3981
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3982
><td class="source"> // MATRIX FULL MONTY<br></td></tr
><tr
id=sl_svn7768_3983
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3984
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3985
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_3986
><td class="source"> * Set the current transformation matrix to identity.<br></td></tr
><tr
id=sl_svn7768_3987
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_3988
><td class="source"> public void resetMatrix() {<br></td></tr
><tr
id=sl_svn7768_3989
><td class="source"> showMethodWarning(&quot;resetMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_3990
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3991
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3992
><td class="source"><br></td></tr
><tr
id=sl_svn7768_3993
><td class="source"> public void applyMatrix(PMatrix source) {<br></td></tr
><tr
id=sl_svn7768_3994
><td class="source"> if (source instanceof PMatrix2D) {<br></td></tr
><tr
id=sl_svn7768_3995
><td class="source"> applyMatrix((PMatrix2D) source);<br></td></tr
><tr
id=sl_svn7768_3996
><td class="source"> } else if (source instanceof PMatrix3D) {<br></td></tr
><tr
id=sl_svn7768_3997
><td class="source"> applyMatrix((PMatrix3D) source);<br></td></tr
><tr
id=sl_svn7768_3998
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_3999
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4000
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4001
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4002
><td class="source"> public void applyMatrix(PMatrix2D source) {<br></td></tr
><tr
id=sl_svn7768_4003
><td class="source"> applyMatrix(source.m00, source.m01, source.m02,<br></td></tr
><tr
id=sl_svn7768_4004
><td class="source"> source.m10, source.m11, source.m12);<br></td></tr
><tr
id=sl_svn7768_4005
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4006
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4007
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4008
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4009
><td class="source"> * Apply a 3x2 affine transformation matrix.<br></td></tr
><tr
id=sl_svn7768_4010
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4011
><td class="source"> public void applyMatrix(float n00, float n01, float n02,<br></td></tr
><tr
id=sl_svn7768_4012
><td class="source"> float n10, float n11, float n12) {<br></td></tr
><tr
id=sl_svn7768_4013
><td class="source"> showMissingWarning(&quot;applyMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4014
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4015
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4016
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4017
><td class="source"> public void applyMatrix(PMatrix3D source) {<br></td></tr
><tr
id=sl_svn7768_4018
><td class="source"> applyMatrix(source.m00, source.m01, source.m02, source.m03,<br></td></tr
><tr
id=sl_svn7768_4019
><td class="source"> source.m10, source.m11, source.m12, source.m13,<br></td></tr
><tr
id=sl_svn7768_4020
><td class="source"> source.m20, source.m21, source.m22, source.m23,<br></td></tr
><tr
id=sl_svn7768_4021
><td class="source"> source.m30, source.m31, source.m32, source.m33);<br></td></tr
><tr
id=sl_svn7768_4022
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4023
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4024
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4025
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4026
><td class="source"> * Apply a 4x4 transformation matrix.<br></td></tr
><tr
id=sl_svn7768_4027
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4028
><td class="source"> public void applyMatrix(float n00, float n01, float n02, float n03,<br></td></tr
><tr
id=sl_svn7768_4029
><td class="source"> float n10, float n11, float n12, float n13,<br></td></tr
><tr
id=sl_svn7768_4030
><td class="source"> float n20, float n21, float n22, float n23,<br></td></tr
><tr
id=sl_svn7768_4031
><td class="source"> float n30, float n31, float n32, float n33) {<br></td></tr
><tr
id=sl_svn7768_4032
><td class="source"> showMissingWarning(&quot;applyMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4033
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4034
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4035
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4036
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4037
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4038
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4039
><td class="source"> // MATRIX GET/SET/PRINT<br></td></tr
><tr
id=sl_svn7768_4040
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4041
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4042
><td class="source"> public PMatrix getMatrix() {<br></td></tr
><tr
id=sl_svn7768_4043
><td class="source"> showMissingWarning(&quot;getMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4044
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_4045
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4046
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4047
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4048
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4049
><td class="source"> * Copy the current transformation matrix into the specified target.<br></td></tr
><tr
id=sl_svn7768_4050
><td class="source"> * Pass in null to create a new matrix.<br></td></tr
><tr
id=sl_svn7768_4051
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4052
><td class="source"> public PMatrix2D getMatrix(PMatrix2D target) {<br></td></tr
><tr
id=sl_svn7768_4053
><td class="source"> showMissingWarning(&quot;getMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4054
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_4055
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4056
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4057
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4058
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4059
><td class="source"> * Copy the current transformation matrix into the specified target.<br></td></tr
><tr
id=sl_svn7768_4060
><td class="source"> * Pass in null to create a new matrix.<br></td></tr
><tr
id=sl_svn7768_4061
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4062
><td class="source"> public PMatrix3D getMatrix(PMatrix3D target) {<br></td></tr
><tr
id=sl_svn7768_4063
><td class="source"> showMissingWarning(&quot;getMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4064
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_4065
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4066
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4067
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4068
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4069
><td class="source"> * Set the current transformation matrix to the contents of another.<br></td></tr
><tr
id=sl_svn7768_4070
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4071
><td class="source"> public void setMatrix(PMatrix source) {<br></td></tr
><tr
id=sl_svn7768_4072
><td class="source"> if (source instanceof PMatrix2D) {<br></td></tr
><tr
id=sl_svn7768_4073
><td class="source"> setMatrix((PMatrix2D) source);<br></td></tr
><tr
id=sl_svn7768_4074
><td class="source"> } else if (source instanceof PMatrix3D) {<br></td></tr
><tr
id=sl_svn7768_4075
><td class="source"> setMatrix((PMatrix3D) source);<br></td></tr
><tr
id=sl_svn7768_4076
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4077
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4078
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4079
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4080
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4081
><td class="source"> * Set the current transformation to the contents of the specified source.<br></td></tr
><tr
id=sl_svn7768_4082
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4083
><td class="source"> public void setMatrix(PMatrix2D source) {<br></td></tr
><tr
id=sl_svn7768_4084
><td class="source"> showMissingWarning(&quot;setMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4085
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4086
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4087
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4088
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4089
><td class="source"> * Set the current transformation to the contents of the specified source.<br></td></tr
><tr
id=sl_svn7768_4090
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4091
><td class="source"> public void setMatrix(PMatrix3D source) {<br></td></tr
><tr
id=sl_svn7768_4092
><td class="source"> showMissingWarning(&quot;setMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4093
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4094
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4095
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4096
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4097
><td class="source"> * Print the current model (or &quot;transformation&quot;) matrix.<br></td></tr
><tr
id=sl_svn7768_4098
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4099
><td class="source"> public void printMatrix() {<br></td></tr
><tr
id=sl_svn7768_4100
><td class="source"> showMethodWarning(&quot;printMatrix&quot;);<br></td></tr
><tr
id=sl_svn7768_4101
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4102
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4103
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4104
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4105
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4106
><td class="source"> // CAMERA<br></td></tr
><tr
id=sl_svn7768_4107
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4108
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4109
><td class="source"> public void beginCamera() {<br></td></tr
><tr
id=sl_svn7768_4110
><td class="source"> showMethodWarning(&quot;beginCamera&quot;);<br></td></tr
><tr
id=sl_svn7768_4111
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4112
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4113
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4114
><td class="source"> public void endCamera() {<br></td></tr
><tr
id=sl_svn7768_4115
><td class="source"> showMethodWarning(&quot;endCamera&quot;);<br></td></tr
><tr
id=sl_svn7768_4116
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4117
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4118
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4119
><td class="source"> public void camera() {<br></td></tr
><tr
id=sl_svn7768_4120
><td class="source"> showMissingWarning(&quot;camera&quot;);<br></td></tr
><tr
id=sl_svn7768_4121
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4122
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4123
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4124
><td class="source"> public void camera(float eyeX, float eyeY, float eyeZ,<br></td></tr
><tr
id=sl_svn7768_4125
><td class="source"> float centerX, float centerY, float centerZ,<br></td></tr
><tr
id=sl_svn7768_4126
><td class="source"> float upX, float upY, float upZ) {<br></td></tr
><tr
id=sl_svn7768_4127
><td class="source"> showMissingWarning(&quot;camera&quot;);<br></td></tr
><tr
id=sl_svn7768_4128
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4129
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4130
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4131
><td class="source"> public void printCamera() {<br></td></tr
><tr
id=sl_svn7768_4132
><td class="source"> showMethodWarning(&quot;printCamera&quot;);<br></td></tr
><tr
id=sl_svn7768_4133
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4134
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4135
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4136
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4137
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4138
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4139
><td class="source"> // PROJECTION<br></td></tr
><tr
id=sl_svn7768_4140
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4141
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4142
><td class="source"> public void ortho() {<br></td></tr
><tr
id=sl_svn7768_4143
><td class="source"> showMissingWarning(&quot;ortho&quot;);<br></td></tr
><tr
id=sl_svn7768_4144
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4145
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4146
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_4147
><td class="source"> public void ortho(float left, float right,<br></td></tr
><tr
id=sl_svn7768_4148
><td class="source"> float bottom, float top) {<br></td></tr
><tr
id=sl_svn7768_4149
><td class="source"> showMissingWarning(&quot;ortho&quot;); <br></td></tr
><tr
id=sl_svn7768_4150
><td class="source"> } <br></td></tr
><tr
id=sl_svn7768_4151
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4152
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_4153
><td class="source"> public void ortho(float left, float right,<br></td></tr
><tr
id=sl_svn7768_4154
><td class="source"> float bottom, float top,<br></td></tr
><tr
id=sl_svn7768_4155
><td class="source"> float near, float far) {<br></td></tr
><tr
id=sl_svn7768_4156
><td class="source"> showMissingWarning(&quot;ortho&quot;);<br></td></tr
><tr
id=sl_svn7768_4157
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4158
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4159
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4160
><td class="source"> public void perspective() {<br></td></tr
><tr
id=sl_svn7768_4161
><td class="source"> showMissingWarning(&quot;perspective&quot;);<br></td></tr
><tr
id=sl_svn7768_4162
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4163
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4164
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4165
><td class="source"> public void perspective(float fovy, float aspect, float zNear, float zFar) {<br></td></tr
><tr
id=sl_svn7768_4166
><td class="source"> showMissingWarning(&quot;perspective&quot;);<br></td></tr
><tr
id=sl_svn7768_4167
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4168
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4169
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4170
><td class="source"> public void frustum(float left, float right,<br></td></tr
><tr
id=sl_svn7768_4171
><td class="source"> float bottom, float top,<br></td></tr
><tr
id=sl_svn7768_4172
><td class="source"> float near, float far) {<br></td></tr
><tr
id=sl_svn7768_4173
><td class="source"> showMethodWarning(&quot;frustum&quot;);<br></td></tr
><tr
id=sl_svn7768_4174
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4175
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4176
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4177
><td class="source"> public void printProjection() {<br></td></tr
><tr
id=sl_svn7768_4178
><td class="source"> showMethodWarning(&quot;printCamera&quot;);<br></td></tr
><tr
id=sl_svn7768_4179
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4180
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4181
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4182
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4183
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4184
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4185
><td class="source"> // SCREEN TRANSFORMS<br></td></tr
><tr
id=sl_svn7768_4186
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4187
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4188
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4189
><td class="source"> * Given an x and y coordinate, returns the x position of where<br></td></tr
><tr
id=sl_svn7768_4190
><td class="source"> * that point would be placed on screen, once affected by translate(),<br></td></tr
><tr
id=sl_svn7768_4191
><td class="source"> * scale(), or any other transformations.<br></td></tr
><tr
id=sl_svn7768_4192
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4193
><td class="source"> public float screenX(float x, float y) {<br></td></tr
><tr
id=sl_svn7768_4194
><td class="source"> showMissingWarning(&quot;screenX&quot;);<br></td></tr
><tr
id=sl_svn7768_4195
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4196
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4197
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4198
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4199
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4200
><td class="source"> * Given an x and y coordinate, returns the y position of where<br></td></tr
><tr
id=sl_svn7768_4201
><td class="source"> * that point would be placed on screen, once affected by translate(),<br></td></tr
><tr
id=sl_svn7768_4202
><td class="source"> * scale(), or any other transformations.<br></td></tr
><tr
id=sl_svn7768_4203
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4204
><td class="source"> public float screenY(float x, float y) {<br></td></tr
><tr
id=sl_svn7768_4205
><td class="source"> showMissingWarning(&quot;screenY&quot;);<br></td></tr
><tr
id=sl_svn7768_4206
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4207
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4208
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4209
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4210
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4211
><td class="source"> * Maps a three dimensional point to its placement on-screen.<br></td></tr
><tr
id=sl_svn7768_4212
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_4213
><td class="source"> * Given an (x, y, z) coordinate, returns the x position of where<br></td></tr
><tr
id=sl_svn7768_4214
><td class="source"> * that point would be placed on screen, once affected by translate(),<br></td></tr
><tr
id=sl_svn7768_4215
><td class="source"> * scale(), or any other transformations.<br></td></tr
><tr
id=sl_svn7768_4216
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4217
><td class="source"> public float screenX(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4218
><td class="source"> showMissingWarning(&quot;screenX&quot;);<br></td></tr
><tr
id=sl_svn7768_4219
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4220
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4221
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4222
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4223
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4224
><td class="source"> * Maps a three dimensional point to its placement on-screen.<br></td></tr
><tr
id=sl_svn7768_4225
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_4226
><td class="source"> * Given an (x, y, z) coordinate, returns the y position of where<br></td></tr
><tr
id=sl_svn7768_4227
><td class="source"> * that point would be placed on screen, once affected by translate(),<br></td></tr
><tr
id=sl_svn7768_4228
><td class="source"> * scale(), or any other transformations.<br></td></tr
><tr
id=sl_svn7768_4229
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4230
><td class="source"> public float screenY(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4231
><td class="source"> showMissingWarning(&quot;screenY&quot;);<br></td></tr
><tr
id=sl_svn7768_4232
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4233
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4234
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4235
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4236
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4237
><td class="source"> * Maps a three dimensional point to its placement on-screen.<br></td></tr
><tr
id=sl_svn7768_4238
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_4239
><td class="source"> * Given an (x, y, z) coordinate, returns its z value.<br></td></tr
><tr
id=sl_svn7768_4240
><td class="source"> * This value can be used to determine if an (x, y, z) coordinate<br></td></tr
><tr
id=sl_svn7768_4241
><td class="source"> * is in front or in back of another (x, y, z) coordinate.<br></td></tr
><tr
id=sl_svn7768_4242
><td class="source"> * The units are based on how the zbuffer is set up, and don&#39;t<br></td></tr
><tr
id=sl_svn7768_4243
><td class="source"> * relate to anything &quot;real&quot;. They&#39;re only useful for in<br></td></tr
><tr
id=sl_svn7768_4244
><td class="source"> * comparison to another value obtained from screenZ(),<br></td></tr
><tr
id=sl_svn7768_4245
><td class="source"> * or directly out of the zbuffer[].<br></td></tr
><tr
id=sl_svn7768_4246
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4247
><td class="source"> public float screenZ(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4248
><td class="source"> showMissingWarning(&quot;screenZ&quot;);<br></td></tr
><tr
id=sl_svn7768_4249
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4250
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4251
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4252
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4253
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4254
><td class="source"> * Returns the model space x value for an x, y, z coordinate.<br></td></tr
><tr
id=sl_svn7768_4255
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_4256
><td class="source"> * This will give you a coordinate after it has been transformed<br></td></tr
><tr
id=sl_svn7768_4257
><td class="source"> * by translate(), rotate(), and camera(), but not yet transformed<br></td></tr
><tr
id=sl_svn7768_4258
><td class="source"> * by the projection matrix. For instance, his can be useful for<br></td></tr
><tr
id=sl_svn7768_4259
><td class="source"> * figuring out how points in 3D space relate to the edge<br></td></tr
><tr
id=sl_svn7768_4260
><td class="source"> * coordinates of a shape.<br></td></tr
><tr
id=sl_svn7768_4261
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4262
><td class="source"> public float modelX(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4263
><td class="source"> showMissingWarning(&quot;modelX&quot;);<br></td></tr
><tr
id=sl_svn7768_4264
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4265
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4266
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4267
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4268
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4269
><td class="source"> * Returns the model space y value for an x, y, z coordinate.<br></td></tr
><tr
id=sl_svn7768_4270
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4271
><td class="source"> public float modelY(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4272
><td class="source"> showMissingWarning(&quot;modelY&quot;);<br></td></tr
><tr
id=sl_svn7768_4273
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4274
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4275
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4276
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4277
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4278
><td class="source"> * Returns the model space z value for an x, y, z coordinate.<br></td></tr
><tr
id=sl_svn7768_4279
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4280
><td class="source"> public float modelZ(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4281
><td class="source"> showMissingWarning(&quot;modelZ&quot;);<br></td></tr
><tr
id=sl_svn7768_4282
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_4283
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4284
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4285
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4286
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4287
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4288
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4289
><td class="source"> // STYLE<br></td></tr
><tr
id=sl_svn7768_4290
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4291
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4292
><td class="source"> public void pushStyle() {<br></td></tr
><tr
id=sl_svn7768_4293
><td class="source"> if (styleStackDepth == styleStack.length) {<br></td></tr
><tr
id=sl_svn7768_4294
><td class="source"> styleStack = (PStyle[]) PApplet.expand(styleStack);<br></td></tr
><tr
id=sl_svn7768_4295
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4296
><td class="source"> if (styleStack[styleStackDepth] == null) {<br></td></tr
><tr
id=sl_svn7768_4297
><td class="source"> styleStack[styleStackDepth] = new PStyle();<br></td></tr
><tr
id=sl_svn7768_4298
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4299
><td class="source"> PStyle s = styleStack[styleStackDepth++];<br></td></tr
><tr
id=sl_svn7768_4300
><td class="source"> getStyle(s);<br></td></tr
><tr
id=sl_svn7768_4301
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4302
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4303
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4304
><td class="source"> public void popStyle() {<br></td></tr
><tr
id=sl_svn7768_4305
><td class="source"> if (styleStackDepth == 0) {<br></td></tr
><tr
id=sl_svn7768_4306
><td class="source"> throw new RuntimeException(&quot;Too many popStyle() without enough pushStyle()&quot;);<br></td></tr
><tr
id=sl_svn7768_4307
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4308
><td class="source"> styleStackDepth--;<br></td></tr
><tr
id=sl_svn7768_4309
><td class="source"> style(styleStack[styleStackDepth]);<br></td></tr
><tr
id=sl_svn7768_4310
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4311
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4312
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4313
><td class="source"> public void style(PStyle s) {<br></td></tr
><tr
id=sl_svn7768_4314
><td class="source"> // if (s.smooth) {<br></td></tr
><tr
id=sl_svn7768_4315
><td class="source"> // smooth();<br></td></tr
><tr
id=sl_svn7768_4316
><td class="source"> // } else {<br></td></tr
><tr
id=sl_svn7768_4317
><td class="source"> // noSmooth();<br></td></tr
><tr
id=sl_svn7768_4318
><td class="source"> // }<br></td></tr
><tr
id=sl_svn7768_4319
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4320
><td class="source"> imageMode(s.imageMode);<br></td></tr
><tr
id=sl_svn7768_4321
><td class="source"> rectMode(s.rectMode);<br></td></tr
><tr
id=sl_svn7768_4322
><td class="source"> ellipseMode(s.ellipseMode);<br></td></tr
><tr
id=sl_svn7768_4323
><td class="source"> shapeMode(s.shapeMode);<br></td></tr
><tr
id=sl_svn7768_4324
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4325
><td class="source"> if (s.tint) {<br></td></tr
><tr
id=sl_svn7768_4326
><td class="source"> tint(s.tintColor);<br></td></tr
><tr
id=sl_svn7768_4327
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_4328
><td class="source"> noTint();<br></td></tr
><tr
id=sl_svn7768_4329
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4330
><td class="source"> if (s.fill) {<br></td></tr
><tr
id=sl_svn7768_4331
><td class="source"> fill(s.fillColor);<br></td></tr
><tr
id=sl_svn7768_4332
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_4333
><td class="source"> noFill();<br></td></tr
><tr
id=sl_svn7768_4334
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4335
><td class="source"> if (s.stroke) {<br></td></tr
><tr
id=sl_svn7768_4336
><td class="source"> stroke(s.strokeColor);<br></td></tr
><tr
id=sl_svn7768_4337
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_4338
><td class="source"> noStroke();<br></td></tr
><tr
id=sl_svn7768_4339
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4340
><td class="source"> strokeWeight(s.strokeWeight);<br></td></tr
><tr
id=sl_svn7768_4341
><td class="source"> strokeCap(s.strokeCap);<br></td></tr
><tr
id=sl_svn7768_4342
><td class="source"> strokeJoin(s.strokeJoin);<br></td></tr
><tr
id=sl_svn7768_4343
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4344
><td class="source"> // Set the colorMode() for the material properties.<br></td></tr
><tr
id=sl_svn7768_4345
><td class="source"> // TODO this is really inefficient, need to just have a material() method,<br></td></tr
><tr
id=sl_svn7768_4346
><td class="source"> // but this has the least impact to the API.<br></td></tr
><tr
id=sl_svn7768_4347
><td class="source"> colorMode(RGB, 1);<br></td></tr
><tr
id=sl_svn7768_4348
><td class="source"> ambient(s.ambientR, s.ambientG, s.ambientB);<br></td></tr
><tr
id=sl_svn7768_4349
><td class="source"> emissive(s.emissiveR, s.emissiveG, s.emissiveB);<br></td></tr
><tr
id=sl_svn7768_4350
><td class="source"> specular(s.specularR, s.specularG, s.specularB);<br></td></tr
><tr
id=sl_svn7768_4351
><td class="source"> shininess(s.shininess);<br></td></tr
><tr
id=sl_svn7768_4352
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4353
><td class="source"> /*<br></td></tr
><tr
id=sl_svn7768_4354
><td class="source"> s.ambientR = ambientR;<br></td></tr
><tr
id=sl_svn7768_4355
><td class="source"> s.ambientG = ambientG;<br></td></tr
><tr
id=sl_svn7768_4356
><td class="source"> s.ambientB = ambientB;<br></td></tr
><tr
id=sl_svn7768_4357
><td class="source"> s.specularR = specularR;<br></td></tr
><tr
id=sl_svn7768_4358
><td class="source"> s.specularG = specularG;<br></td></tr
><tr
id=sl_svn7768_4359
><td class="source"> s.specularB = specularB;<br></td></tr
><tr
id=sl_svn7768_4360
><td class="source"> s.emissiveR = emissiveR;<br></td></tr
><tr
id=sl_svn7768_4361
><td class="source"> s.emissiveG = emissiveG;<br></td></tr
><tr
id=sl_svn7768_4362
><td class="source"> s.emissiveB = emissiveB;<br></td></tr
><tr
id=sl_svn7768_4363
><td class="source"> s.shininess = shininess;<br></td></tr
><tr
id=sl_svn7768_4364
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4365
><td class="source"> // material(s.ambientR, s.ambientG, s.ambientB,<br></td></tr
><tr
id=sl_svn7768_4366
><td class="source"> // s.emissiveR, s.emissiveG, s.emissiveB,<br></td></tr
><tr
id=sl_svn7768_4367
><td class="source"> // s.specularR, s.specularG, s.specularB,<br></td></tr
><tr
id=sl_svn7768_4368
><td class="source"> // s.shininess);<br></td></tr
><tr
id=sl_svn7768_4369
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4370
><td class="source"> // Set this after the material properties.<br></td></tr
><tr
id=sl_svn7768_4371
><td class="source"> colorMode(s.colorMode,<br></td></tr
><tr
id=sl_svn7768_4372
><td class="source"> s.colorModeX, s.colorModeY, s.colorModeZ, s.colorModeA);<br></td></tr
><tr
id=sl_svn7768_4373
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4374
><td class="source"> // This is a bit asymmetric, since there&#39;s no way to do &quot;noFont()&quot;,<br></td></tr
><tr
id=sl_svn7768_4375
><td class="source"> // and a null textFont will produce an error (since usually that means that<br></td></tr
><tr
id=sl_svn7768_4376
><td class="source"> // the font couldn&#39;t load properly). So in some cases, the font won&#39;t be<br></td></tr
><tr
id=sl_svn7768_4377
><td class="source"> // &#39;cleared&#39; to null, even though that&#39;s technically correct.<br></td></tr
><tr
id=sl_svn7768_4378
><td class="source"> if (s.textFont != null) {<br></td></tr
><tr
id=sl_svn7768_4379
><td class="source"> textFont(s.textFont, s.textSize);<br></td></tr
><tr
id=sl_svn7768_4380
><td class="source"> textLeading(s.textLeading);<br></td></tr
><tr
id=sl_svn7768_4381
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4382
><td class="source"> // These don&#39;t require a font to be set.<br></td></tr
><tr
id=sl_svn7768_4383
><td class="source"> textAlign(s.textAlign, s.textAlignY);<br></td></tr
><tr
id=sl_svn7768_4384
><td class="source"> textMode(s.textMode);<br></td></tr
><tr
id=sl_svn7768_4385
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4386
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4387
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4388
><td class="source"> public PStyle getStyle() { // ignore<br></td></tr
><tr
id=sl_svn7768_4389
><td class="source"> return getStyle(null);<br></td></tr
><tr
id=sl_svn7768_4390
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4391
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4392
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4393
><td class="source"> public PStyle getStyle(PStyle s) { // ignore<br></td></tr
><tr
id=sl_svn7768_4394
><td class="source"> if (s == null) {<br></td></tr
><tr
id=sl_svn7768_4395
><td class="source"> s = new PStyle();<br></td></tr
><tr
id=sl_svn7768_4396
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4397
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4398
><td class="source"> s.imageMode = imageMode;<br></td></tr
><tr
id=sl_svn7768_4399
><td class="source"> s.rectMode = rectMode;<br></td></tr
><tr
id=sl_svn7768_4400
><td class="source"> s.ellipseMode = ellipseMode;<br></td></tr
><tr
id=sl_svn7768_4401
><td class="source"> s.shapeMode = shapeMode;<br></td></tr
><tr
id=sl_svn7768_4402
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4403
><td class="source"> s.colorMode = colorMode;<br></td></tr
><tr
id=sl_svn7768_4404
><td class="source"> s.colorModeX = colorModeX;<br></td></tr
><tr
id=sl_svn7768_4405
><td class="source"> s.colorModeY = colorModeY;<br></td></tr
><tr
id=sl_svn7768_4406
><td class="source"> s.colorModeZ = colorModeZ;<br></td></tr
><tr
id=sl_svn7768_4407
><td class="source"> s.colorModeA = colorModeA;<br></td></tr
><tr
id=sl_svn7768_4408
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4409
><td class="source"> s.tint = tint;<br></td></tr
><tr
id=sl_svn7768_4410
><td class="source"> s.tintColor = tintColor;<br></td></tr
><tr
id=sl_svn7768_4411
><td class="source"> s.fill = fill;<br></td></tr
><tr
id=sl_svn7768_4412
><td class="source"> s.fillColor = fillColor;<br></td></tr
><tr
id=sl_svn7768_4413
><td class="source"> s.stroke = stroke;<br></td></tr
><tr
id=sl_svn7768_4414
><td class="source"> s.strokeColor = strokeColor;<br></td></tr
><tr
id=sl_svn7768_4415
><td class="source"> s.strokeWeight = strokeWeight;<br></td></tr
><tr
id=sl_svn7768_4416
><td class="source"> s.strokeCap = strokeCap;<br></td></tr
><tr
id=sl_svn7768_4417
><td class="source"> s.strokeJoin = strokeJoin;<br></td></tr
><tr
id=sl_svn7768_4418
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4419
><td class="source"> s.ambientR = ambientR;<br></td></tr
><tr
id=sl_svn7768_4420
><td class="source"> s.ambientG = ambientG;<br></td></tr
><tr
id=sl_svn7768_4421
><td class="source"> s.ambientB = ambientB;<br></td></tr
><tr
id=sl_svn7768_4422
><td class="source"> s.specularR = specularR;<br></td></tr
><tr
id=sl_svn7768_4423
><td class="source"> s.specularG = specularG;<br></td></tr
><tr
id=sl_svn7768_4424
><td class="source"> s.specularB = specularB;<br></td></tr
><tr
id=sl_svn7768_4425
><td class="source"> s.emissiveR = emissiveR;<br></td></tr
><tr
id=sl_svn7768_4426
><td class="source"> s.emissiveG = emissiveG;<br></td></tr
><tr
id=sl_svn7768_4427
><td class="source"> s.emissiveB = emissiveB;<br></td></tr
><tr
id=sl_svn7768_4428
><td class="source"> s.shininess = shininess;<br></td></tr
><tr
id=sl_svn7768_4429
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4430
><td class="source"> s.textFont = textFont;<br></td></tr
><tr
id=sl_svn7768_4431
><td class="source"> s.textAlign = textAlign;<br></td></tr
><tr
id=sl_svn7768_4432
><td class="source"> s.textAlignY = textAlignY;<br></td></tr
><tr
id=sl_svn7768_4433
><td class="source"> s.textMode = textMode;<br></td></tr
><tr
id=sl_svn7768_4434
><td class="source"> s.textSize = textSize;<br></td></tr
><tr
id=sl_svn7768_4435
><td class="source"> s.textLeading = textLeading;<br></td></tr
><tr
id=sl_svn7768_4436
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4437
><td class="source"> return s;<br></td></tr
><tr
id=sl_svn7768_4438
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4439
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4440
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4441
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4442
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4443
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4444
><td class="source"> // STROKE CAP/JOIN/WEIGHT<br></td></tr
><tr
id=sl_svn7768_4445
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4446
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4447
><td class="source"> public void strokeWeight(float weight) {<br></td></tr
><tr
id=sl_svn7768_4448
><td class="source"> strokeWeight = weight;<br></td></tr
><tr
id=sl_svn7768_4449
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4450
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4451
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4452
><td class="source"> public void strokeJoin(int join) {<br></td></tr
><tr
id=sl_svn7768_4453
><td class="source"> strokeJoin = join;<br></td></tr
><tr
id=sl_svn7768_4454
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4455
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4456
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4457
><td class="source"> public void strokeCap(int cap) {<br></td></tr
><tr
id=sl_svn7768_4458
><td class="source"> strokeCap = cap;<br></td></tr
><tr
id=sl_svn7768_4459
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4460
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4461
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4462
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4463
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4464
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4465
><td class="source"> // STROKE COLOR<br></td></tr
><tr
id=sl_svn7768_4466
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4467
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4468
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4469
><td class="source"> * Disables drawing the stroke (outline). If both &lt;b&gt;noStroke()&lt;/b&gt; and<br></td></tr
><tr
id=sl_svn7768_4470
><td class="source"> * &lt;b&gt;noFill()&lt;/b&gt; are called, no shapes will be drawn to the screen.<br></td></tr
><tr
id=sl_svn7768_4471
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4472
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_4473
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4474
><td class="source"> * @see PGraphics#stroke(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4475
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4476
><td class="source"> public void noStroke() {<br></td></tr
><tr
id=sl_svn7768_4477
><td class="source"> stroke = false;<br></td></tr
><tr
id=sl_svn7768_4478
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4479
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4480
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4481
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4482
><td class="source"> * Set the tint to either a grayscale or ARGB value.<br></td></tr
><tr
id=sl_svn7768_4483
><td class="source"> * See notes attached to the fill() function.<br></td></tr
><tr
id=sl_svn7768_4484
><td class="source"> * @param rgb color value in hexadecimal notation<br></td></tr
><tr
id=sl_svn7768_4485
><td class="source"> * (i.e. #FFCC00 or 0xFFFFCC00) or any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_4486
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4487
><td class="source"> public void stroke(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4488
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4489
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4490
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4491
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4492
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4493
><td class="source"> public void stroke(int rgb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4494
><td class="source"> colorCalc(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4495
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4496
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4497
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4498
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4499
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4500
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4501
><td class="source"> * @param gray specifies a value between white and black<br></td></tr
><tr
id=sl_svn7768_4502
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4503
><td class="source"> public void stroke(float gray) {<br></td></tr
><tr
id=sl_svn7768_4504
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4505
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4506
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4507
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4508
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4509
><td class="source"> public void stroke(float gray, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4510
><td class="source"> colorCalc(gray, alpha);<br></td></tr
><tr
id=sl_svn7768_4511
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4512
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4513
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4514
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4515
><td class="source"> public void stroke(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4516
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4517
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4518
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4519
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4520
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4521
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4522
><td class="source"> * Sets the color used to draw lines and borders around shapes. This color<br></td></tr
><tr
id=sl_svn7768_4523
><td class="source"> * is either specified in terms of the RGB or HSB color depending on the<br></td></tr
><tr
id=sl_svn7768_4524
><td class="source"> * current &lt;b&gt;colorMode()&lt;/b&gt; (the default color space is RGB, with each<br></td></tr
><tr
id=sl_svn7768_4525
><td class="source"> * value in the range from 0 to 255).<br></td></tr
><tr
id=sl_svn7768_4526
><td class="source"> * &lt;br&gt;&lt;br&gt;When using hexadecimal notation to specify a color, use &quot;#&quot; or<br></td></tr
><tr
id=sl_svn7768_4527
><td class="source"> * &quot;0x&quot; before the values (e.g. #CCFFAA, 0xFFCCFFAA). The # syntax uses six<br></td></tr
><tr
id=sl_svn7768_4528
><td class="source"> * digits to specify a color (the way colors are specified in HTML and CSS).<br></td></tr
><tr
id=sl_svn7768_4529
><td class="source"> * When using the hexadecimal notation starting with &quot;0x&quot;, the hexadecimal<br></td></tr
><tr
id=sl_svn7768_4530
><td class="source"> * value must be specified with eight characters; the first two characters<br></td></tr
><tr
id=sl_svn7768_4531
><td class="source"> * define the alpha component and the remainder the red, green, and blue<br></td></tr
><tr
id=sl_svn7768_4532
><td class="source"> * components.<br></td></tr
><tr
id=sl_svn7768_4533
><td class="source"> * &lt;br&gt;&lt;br&gt;The value for the parameter &quot;gray&quot; must be less than or equal<br></td></tr
><tr
id=sl_svn7768_4534
><td class="source"> * to the current maximum value as specified by &lt;b&gt;colorMode()&lt;/b&gt;.<br></td></tr
><tr
id=sl_svn7768_4535
><td class="source"> * The default maximum value is 255.<br></td></tr
><tr
id=sl_svn7768_4536
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4537
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_4538
><td class="source"> * @param alpha opacity of the stroke<br></td></tr
><tr
id=sl_svn7768_4539
><td class="source"> * @param x red or hue value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_4540
><td class="source"> * @param y green or saturation value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_4541
><td class="source"> * @param z blue or brightness value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_4542
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4543
><td class="source"> public void stroke(float x, float y, float z, float a) {<br></td></tr
><tr
id=sl_svn7768_4544
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_4545
><td class="source"> strokeFromCalc();<br></td></tr
><tr
id=sl_svn7768_4546
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4547
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4548
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4549
><td class="source"> protected void strokeFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4550
><td class="source"> stroke = true;<br></td></tr
><tr
id=sl_svn7768_4551
><td class="source"> strokeR = calcR;<br></td></tr
><tr
id=sl_svn7768_4552
><td class="source"> strokeG = calcG;<br></td></tr
><tr
id=sl_svn7768_4553
><td class="source"> strokeB = calcB;<br></td></tr
><tr
id=sl_svn7768_4554
><td class="source"> strokeA = calcA;<br></td></tr
><tr
id=sl_svn7768_4555
><td class="source"> strokeRi = calcRi;<br></td></tr
><tr
id=sl_svn7768_4556
><td class="source"> strokeGi = calcGi;<br></td></tr
><tr
id=sl_svn7768_4557
><td class="source"> strokeBi = calcBi;<br></td></tr
><tr
id=sl_svn7768_4558
><td class="source"> strokeAi = calcAi;<br></td></tr
><tr
id=sl_svn7768_4559
><td class="source"> strokeColor = calcColor;<br></td></tr
><tr
id=sl_svn7768_4560
><td class="source"> strokeAlpha = calcAlpha;<br></td></tr
><tr
id=sl_svn7768_4561
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4562
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4563
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4564
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4565
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4566
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4567
><td class="source"> // TINT COLOR<br></td></tr
><tr
id=sl_svn7768_4568
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4569
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4570
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4571
><td class="source"> * Removes the current fill value for displaying images and reverts to displaying images with their original hues.<br></td></tr
><tr
id=sl_svn7768_4572
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4573
><td class="source"> * @webref image:loading_displaying<br></td></tr
><tr
id=sl_svn7768_4574
><td class="source"> * @see processing.core.PGraphics#tint(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4575
><td class="source"> * @see processing.core.PGraphics#image(PImage, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4576
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4577
><td class="source"> public void noTint() {<br></td></tr
><tr
id=sl_svn7768_4578
><td class="source"> tint = false;<br></td></tr
><tr
id=sl_svn7768_4579
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4580
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4581
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4582
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4583
><td class="source"> * Set the tint to either a grayscale or ARGB value.<br></td></tr
><tr
id=sl_svn7768_4584
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4585
><td class="source"> public void tint(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4586
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4587
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4588
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4589
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4590
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4591
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4592
><td class="source"> * @param rgb color value in hexadecimal notation<br></td></tr
><tr
id=sl_svn7768_4593
><td class="source"> * (i.e. #FFCC00 or 0xFFFFCC00) or any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_4594
><td class="source"> * @param alpha opacity of the image<br></td></tr
><tr
id=sl_svn7768_4595
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4596
><td class="source"> public void tint(int rgb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4597
><td class="source"> colorCalc(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4598
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4599
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4600
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4601
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4602
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4603
><td class="source"> * @param gray any valid number<br></td></tr
><tr
id=sl_svn7768_4604
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4605
><td class="source"> public void tint(float gray) {<br></td></tr
><tr
id=sl_svn7768_4606
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4607
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4608
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4609
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4610
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4611
><td class="source"> public void tint(float gray, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4612
><td class="source"> colorCalc(gray, alpha);<br></td></tr
><tr
id=sl_svn7768_4613
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4614
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4615
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4616
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4617
><td class="source"> public void tint(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4618
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4619
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4620
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4621
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4622
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4623
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4624
><td class="source"> * Sets the fill value for displaying images. Images can be tinted to<br></td></tr
><tr
id=sl_svn7768_4625
><td class="source"> * specified colors or made transparent by setting the alpha.<br></td></tr
><tr
id=sl_svn7768_4626
><td class="source"> * &lt;br&gt;&lt;br&gt;To make an image transparent, but not change it&#39;s color,<br></td></tr
><tr
id=sl_svn7768_4627
><td class="source"> * use white as the tint color and specify an alpha value. For instance,<br></td></tr
><tr
id=sl_svn7768_4628
><td class="source"> * tint(255, 128) will make an image 50% transparent (unless<br></td></tr
><tr
id=sl_svn7768_4629
><td class="source"> * &lt;b&gt;colorMode()&lt;/b&gt; has been used).<br></td></tr
><tr
id=sl_svn7768_4630
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4631
><td class="source"> * &lt;br&gt;&lt;br&gt;When using hexadecimal notation to specify a color, use &quot;#&quot; or<br></td></tr
><tr
id=sl_svn7768_4632
><td class="source"> * &quot;0x&quot; before the values (e.g. #CCFFAA, 0xFFCCFFAA). The # syntax uses six<br></td></tr
><tr
id=sl_svn7768_4633
><td class="source"> * digits to specify a color (the way colors are specified in HTML and CSS).<br></td></tr
><tr
id=sl_svn7768_4634
><td class="source"> * When using the hexadecimal notation starting with &quot;0x&quot;, the hexadecimal<br></td></tr
><tr
id=sl_svn7768_4635
><td class="source"> * value must be specified with eight characters; the first two characters<br></td></tr
><tr
id=sl_svn7768_4636
><td class="source"> * define the alpha component and the remainder the red, green, and blue<br></td></tr
><tr
id=sl_svn7768_4637
><td class="source"> * components.<br></td></tr
><tr
id=sl_svn7768_4638
><td class="source"> * &lt;br&gt;&lt;br&gt;The value for the parameter &quot;gray&quot; must be less than or equal<br></td></tr
><tr
id=sl_svn7768_4639
><td class="source"> * to the current maximum value as specified by &lt;b&gt;colorMode()&lt;/b&gt;.<br></td></tr
><tr
id=sl_svn7768_4640
><td class="source"> * The default maximum value is 255.<br></td></tr
><tr
id=sl_svn7768_4641
><td class="source"> * &lt;br&gt;&lt;br&gt;The tint() method is also used to control the coloring of<br></td></tr
><tr
id=sl_svn7768_4642
><td class="source"> * textures in 3D.<br></td></tr
><tr
id=sl_svn7768_4643
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4644
><td class="source"> * @webref image:loading_displaying<br></td></tr
><tr
id=sl_svn7768_4645
><td class="source"> * @param x red or hue value<br></td></tr
><tr
id=sl_svn7768_4646
><td class="source"> * @param y green or saturation value<br></td></tr
><tr
id=sl_svn7768_4647
><td class="source"> * @param z blue or brightness value<br></td></tr
><tr
id=sl_svn7768_4648
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4649
><td class="source"> * @see processing.core.PGraphics#noTint()<br></td></tr
><tr
id=sl_svn7768_4650
><td class="source"> * @see processing.core.PGraphics#image(PImage, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4651
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4652
><td class="source"> public void tint(float x, float y, float z, float a) {<br></td></tr
><tr
id=sl_svn7768_4653
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_4654
><td class="source"> tintFromCalc();<br></td></tr
><tr
id=sl_svn7768_4655
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4656
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4657
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4658
><td class="source"> protected void tintFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4659
><td class="source"> tint = true;<br></td></tr
><tr
id=sl_svn7768_4660
><td class="source"> tintR = calcR;<br></td></tr
><tr
id=sl_svn7768_4661
><td class="source"> tintG = calcG;<br></td></tr
><tr
id=sl_svn7768_4662
><td class="source"> tintB = calcB;<br></td></tr
><tr
id=sl_svn7768_4663
><td class="source"> tintA = calcA;<br></td></tr
><tr
id=sl_svn7768_4664
><td class="source"> tintRi = calcRi;<br></td></tr
><tr
id=sl_svn7768_4665
><td class="source"> tintGi = calcGi;<br></td></tr
><tr
id=sl_svn7768_4666
><td class="source"> tintBi = calcBi;<br></td></tr
><tr
id=sl_svn7768_4667
><td class="source"> tintAi = calcAi;<br></td></tr
><tr
id=sl_svn7768_4668
><td class="source"> tintColor = calcColor;<br></td></tr
><tr
id=sl_svn7768_4669
><td class="source"> tintAlpha = calcAlpha;<br></td></tr
><tr
id=sl_svn7768_4670
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4671
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4672
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4673
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4674
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4675
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4676
><td class="source"> // FILL COLOR<br></td></tr
><tr
id=sl_svn7768_4677
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4678
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4679
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4680
><td class="source"> * Disables filling geometry. If both &lt;b&gt;noStroke()&lt;/b&gt; and &lt;b&gt;noFill()&lt;/b&gt;<br></td></tr
><tr
id=sl_svn7768_4681
><td class="source"> * are called, no shapes will be drawn to the screen.<br></td></tr
><tr
id=sl_svn7768_4682
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4683
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_4684
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4685
><td class="source"> * @see PGraphics#fill(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4686
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4687
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4688
><td class="source"> public void noFill() {<br></td></tr
><tr
id=sl_svn7768_4689
><td class="source"> fill = false;<br></td></tr
><tr
id=sl_svn7768_4690
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4691
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4692
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4693
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4694
><td class="source"> * Set the fill to either a grayscale value or an ARGB int.<br></td></tr
><tr
id=sl_svn7768_4695
><td class="source"> * @param rgb color value in hexadecimal notation (i.e. #FFCC00 or 0xFFFFCC00) or any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_4696
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4697
><td class="source"> public void fill(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4698
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4699
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4700
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4701
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4702
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4703
><td class="source"> public void fill(int rgb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4704
><td class="source"> colorCalc(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4705
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4706
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4707
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4708
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4709
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4710
><td class="source"> * @param gray number specifying value between white and black<br></td></tr
><tr
id=sl_svn7768_4711
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4712
><td class="source"> public void fill(float gray) {<br></td></tr
><tr
id=sl_svn7768_4713
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4714
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4715
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4716
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4717
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4718
><td class="source"> public void fill(float gray, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4719
><td class="source"> colorCalc(gray, alpha);<br></td></tr
><tr
id=sl_svn7768_4720
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4721
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4722
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4723
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4724
><td class="source"> public void fill(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4725
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4726
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4727
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4728
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4729
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4730
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4731
><td class="source"> * Sets the color used to fill shapes. For example, if you run &lt;b&gt;fill(204, 102, 0)&lt;/b&gt;, all subsequent shapes will be filled with orange. This color is either specified in terms of the RGB or HSB color depending on the current &lt;b&gt;colorMode()&lt;/b&gt; (the default color space is RGB, with each value in the range from 0 to 255).<br></td></tr
><tr
id=sl_svn7768_4732
><td class="source"> * &lt;br&gt;&lt;br&gt;When using hexadecimal notation to specify a color, use &quot;#&quot; or &quot;0x&quot; before the values (e.g. #CCFFAA, 0xFFCCFFAA). The # syntax uses six digits to specify a color (the way colors are specified in HTML and CSS). When using the hexadecimal notation starting with &quot;0x&quot;, the hexadecimal value must be specified with eight characters; the first two characters define the alpha component and the remainder the red, green, and blue components.<br></td></tr
><tr
id=sl_svn7768_4733
><td class="source"> * &lt;br&gt;&lt;br&gt;The value for the parameter &quot;gray&quot; must be less than or equal to the current maximum value as specified by &lt;b&gt;colorMode()&lt;/b&gt;. The default maximum value is 255.<br></td></tr
><tr
id=sl_svn7768_4734
><td class="source"> * &lt;br&gt;&lt;br&gt;To change the color of an image (or a texture), use tint().<br></td></tr
><tr
id=sl_svn7768_4735
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4736
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_4737
><td class="source"> * @param x red or hue value<br></td></tr
><tr
id=sl_svn7768_4738
><td class="source"> * @param y green or saturation value<br></td></tr
><tr
id=sl_svn7768_4739
><td class="source"> * @param z blue or brightness value<br></td></tr
><tr
id=sl_svn7768_4740
><td class="source"> * @param alpha opacity of the fill<br></td></tr
><tr
id=sl_svn7768_4741
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4742
><td class="source"> * @see PGraphics#noFill()<br></td></tr
><tr
id=sl_svn7768_4743
><td class="source"> * @see PGraphics#stroke(float)<br></td></tr
><tr
id=sl_svn7768_4744
><td class="source"> * @see PGraphics#tint(float)<br></td></tr
><tr
id=sl_svn7768_4745
><td class="source"> * @see PGraphics#background(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4746
><td class="source"> * @see PGraphics#colorMode(int, float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_4747
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4748
><td class="source"> public void fill(float x, float y, float z, float a) {<br></td></tr
><tr
id=sl_svn7768_4749
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_4750
><td class="source"> fillFromCalc();<br></td></tr
><tr
id=sl_svn7768_4751
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4752
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4753
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4754
><td class="source"> protected void fillFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4755
><td class="source"> fill = true;<br></td></tr
><tr
id=sl_svn7768_4756
><td class="source"> fillR = calcR;<br></td></tr
><tr
id=sl_svn7768_4757
><td class="source"> fillG = calcG;<br></td></tr
><tr
id=sl_svn7768_4758
><td class="source"> fillB = calcB;<br></td></tr
><tr
id=sl_svn7768_4759
><td class="source"> fillA = calcA;<br></td></tr
><tr
id=sl_svn7768_4760
><td class="source"> fillRi = calcRi;<br></td></tr
><tr
id=sl_svn7768_4761
><td class="source"> fillGi = calcGi;<br></td></tr
><tr
id=sl_svn7768_4762
><td class="source"> fillBi = calcBi;<br></td></tr
><tr
id=sl_svn7768_4763
><td class="source"> fillAi = calcAi;<br></td></tr
><tr
id=sl_svn7768_4764
><td class="source"> fillColor = calcColor;<br></td></tr
><tr
id=sl_svn7768_4765
><td class="source"> fillAlpha = calcAlpha;<br></td></tr
><tr
id=sl_svn7768_4766
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4767
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4768
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4769
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4770
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4771
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4772
><td class="source"> // MATERIAL PROPERTIES<br></td></tr
><tr
id=sl_svn7768_4773
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4774
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4775
><td class="source"> public void ambient(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4776
><td class="source">// if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_4777
><td class="source">// ambient((float) rgb);<br></td></tr
><tr
id=sl_svn7768_4778
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4779
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4780
><td class="source">// colorCalcARGB(rgb, colorModeA);<br></td></tr
><tr
id=sl_svn7768_4781
><td class="source">// ambientFromCalc();<br></td></tr
><tr
id=sl_svn7768_4782
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4783
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4784
><td class="source"> ambientFromCalc();<br></td></tr
><tr
id=sl_svn7768_4785
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4786
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4787
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4788
><td class="source"> public void ambient(float gray) {<br></td></tr
><tr
id=sl_svn7768_4789
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4790
><td class="source"> ambientFromCalc();<br></td></tr
><tr
id=sl_svn7768_4791
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4792
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4793
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4794
><td class="source"> public void ambient(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4795
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4796
><td class="source"> ambientFromCalc();<br></td></tr
><tr
id=sl_svn7768_4797
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4798
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4799
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4800
><td class="source"> protected void ambientFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4801
><td class="source"> ambientR = calcR;<br></td></tr
><tr
id=sl_svn7768_4802
><td class="source"> ambientG = calcG;<br></td></tr
><tr
id=sl_svn7768_4803
><td class="source"> ambientB = calcB;<br></td></tr
><tr
id=sl_svn7768_4804
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4805
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4806
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4807
><td class="source"> public void specular(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4808
><td class="source">// if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_4809
><td class="source">// specular((float) rgb);<br></td></tr
><tr
id=sl_svn7768_4810
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4811
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4812
><td class="source">// colorCalcARGB(rgb, colorModeA);<br></td></tr
><tr
id=sl_svn7768_4813
><td class="source">// specularFromCalc();<br></td></tr
><tr
id=sl_svn7768_4814
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4815
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4816
><td class="source"> specularFromCalc();<br></td></tr
><tr
id=sl_svn7768_4817
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4818
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4819
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4820
><td class="source"> public void specular(float gray) {<br></td></tr
><tr
id=sl_svn7768_4821
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4822
><td class="source"> specularFromCalc();<br></td></tr
><tr
id=sl_svn7768_4823
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4824
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4825
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4826
><td class="source"> public void specular(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4827
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4828
><td class="source"> specularFromCalc();<br></td></tr
><tr
id=sl_svn7768_4829
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4830
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4831
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4832
><td class="source"> protected void specularFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4833
><td class="source"> specularR = calcR;<br></td></tr
><tr
id=sl_svn7768_4834
><td class="source"> specularG = calcG;<br></td></tr
><tr
id=sl_svn7768_4835
><td class="source"> specularB = calcB;<br></td></tr
><tr
id=sl_svn7768_4836
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4837
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4838
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4839
><td class="source"> public void shininess(float shine) {<br></td></tr
><tr
id=sl_svn7768_4840
><td class="source"> shininess = shine;<br></td></tr
><tr
id=sl_svn7768_4841
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4842
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4843
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4844
><td class="source"> public void emissive(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4845
><td class="source">// if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_4846
><td class="source">// emissive((float) rgb);<br></td></tr
><tr
id=sl_svn7768_4847
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4848
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4849
><td class="source">// colorCalcARGB(rgb, colorModeA);<br></td></tr
><tr
id=sl_svn7768_4850
><td class="source">// emissiveFromCalc();<br></td></tr
><tr
id=sl_svn7768_4851
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4852
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4853
><td class="source"> emissiveFromCalc();<br></td></tr
><tr
id=sl_svn7768_4854
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4855
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4856
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4857
><td class="source"> public void emissive(float gray) {<br></td></tr
><tr
id=sl_svn7768_4858
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4859
><td class="source"> emissiveFromCalc();<br></td></tr
><tr
id=sl_svn7768_4860
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4861
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4862
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4863
><td class="source"> public void emissive(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4864
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_4865
><td class="source"> emissiveFromCalc();<br></td></tr
><tr
id=sl_svn7768_4866
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4867
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4868
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4869
><td class="source"> protected void emissiveFromCalc() {<br></td></tr
><tr
id=sl_svn7768_4870
><td class="source"> emissiveR = calcR;<br></td></tr
><tr
id=sl_svn7768_4871
><td class="source"> emissiveG = calcG;<br></td></tr
><tr
id=sl_svn7768_4872
><td class="source"> emissiveB = calcB;<br></td></tr
><tr
id=sl_svn7768_4873
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4874
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4875
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4876
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4877
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4878
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4879
><td class="source"> // LIGHTS<br></td></tr
><tr
id=sl_svn7768_4880
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4881
><td class="source"> // The details of lighting are very implementation-specific, so this base<br></td></tr
><tr
id=sl_svn7768_4882
><td class="source"> // class does not handle any details of settings lights. It does however<br></td></tr
><tr
id=sl_svn7768_4883
><td class="source"> // display warning messages that the functions are not available.<br></td></tr
><tr
id=sl_svn7768_4884
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4885
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4886
><td class="source"> public void lights() {<br></td></tr
><tr
id=sl_svn7768_4887
><td class="source"> showMethodWarning(&quot;lights&quot;);<br></td></tr
><tr
id=sl_svn7768_4888
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4889
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4890
><td class="source"> public void noLights() {<br></td></tr
><tr
id=sl_svn7768_4891
><td class="source"> showMethodWarning(&quot;noLights&quot;);<br></td></tr
><tr
id=sl_svn7768_4892
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4893
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4894
><td class="source"> public void ambientLight(float red, float green, float blue) {<br></td></tr
><tr
id=sl_svn7768_4895
><td class="source"> showMethodWarning(&quot;ambientLight&quot;);<br></td></tr
><tr
id=sl_svn7768_4896
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4897
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4898
><td class="source"> public void ambientLight(float red, float green, float blue,<br></td></tr
><tr
id=sl_svn7768_4899
><td class="source"> float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4900
><td class="source"> showMethodWarning(&quot;ambientLight&quot;);<br></td></tr
><tr
id=sl_svn7768_4901
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4902
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4903
><td class="source"> public void directionalLight(float red, float green, float blue,<br></td></tr
><tr
id=sl_svn7768_4904
><td class="source"> float nx, float ny, float nz) {<br></td></tr
><tr
id=sl_svn7768_4905
><td class="source"> showMethodWarning(&quot;directionalLight&quot;);<br></td></tr
><tr
id=sl_svn7768_4906
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4907
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4908
><td class="source"> public void pointLight(float red, float green, float blue,<br></td></tr
><tr
id=sl_svn7768_4909
><td class="source"> float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4910
><td class="source"> showMethodWarning(&quot;pointLight&quot;);<br></td></tr
><tr
id=sl_svn7768_4911
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4912
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4913
><td class="source"> public void spotLight(float red, float green, float blue,<br></td></tr
><tr
id=sl_svn7768_4914
><td class="source"> float x, float y, float z,<br></td></tr
><tr
id=sl_svn7768_4915
><td class="source"> float nx, float ny, float nz,<br></td></tr
><tr
id=sl_svn7768_4916
><td class="source"> float angle, float concentration) {<br></td></tr
><tr
id=sl_svn7768_4917
><td class="source"> showMethodWarning(&quot;spotLight&quot;);<br></td></tr
><tr
id=sl_svn7768_4918
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4919
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4920
><td class="source"> public void lightFalloff(float constant, float linear, float quadratic) {<br></td></tr
><tr
id=sl_svn7768_4921
><td class="source"> showMethodWarning(&quot;lightFalloff&quot;);<br></td></tr
><tr
id=sl_svn7768_4922
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4923
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4924
><td class="source"> public void lightSpecular(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_4925
><td class="source"> showMethodWarning(&quot;lightSpecular&quot;);<br></td></tr
><tr
id=sl_svn7768_4926
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4927
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4928
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4929
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4930
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_4931
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4932
><td class="source"> // BACKGROUND<br></td></tr
><tr
id=sl_svn7768_4933
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4934
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4935
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4936
><td class="source"> * Set the background to a gray or ARGB color.<br></td></tr
><tr
id=sl_svn7768_4937
><td class="source"> * &lt;p&gt;<br></td></tr
><tr
id=sl_svn7768_4938
><td class="source"> * For the main drawing surface, the alpha value will be ignored. However,<br></td></tr
><tr
id=sl_svn7768_4939
><td class="source"> * alpha can be used on PGraphics objects from createGraphics(). This is<br></td></tr
><tr
id=sl_svn7768_4940
><td class="source"> * the only way to set all the pixels partially transparent, for instance.<br></td></tr
><tr
id=sl_svn7768_4941
><td class="source"> * &lt;p&gt;<br></td></tr
><tr
id=sl_svn7768_4942
><td class="source"> * Note that background() should be called before any transformations occur,<br></td></tr
><tr
id=sl_svn7768_4943
><td class="source"> * because some implementations may require the current transformation matrix<br></td></tr
><tr
id=sl_svn7768_4944
><td class="source"> * to be identity before drawing.<br></td></tr
><tr
id=sl_svn7768_4945
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_4946
><td class="source"> * @param rgb color value in hexadecimal notation (i.e. #FFCC00 or 0xFFFFCC00)&lt;br/&gt;or any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_4947
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4948
><td class="source"> public void background(int rgb) {<br></td></tr
><tr
id=sl_svn7768_4949
><td class="source">// if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_4950
><td class="source">// background((float) rgb);<br></td></tr
><tr
id=sl_svn7768_4951
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4952
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4953
><td class="source">// if (format == RGB) {<br></td></tr
><tr
id=sl_svn7768_4954
><td class="source">// rgb |= 0xff000000; // ignore alpha for main drawing surface<br></td></tr
><tr
id=sl_svn7768_4955
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4956
><td class="source">// colorCalcARGB(rgb, colorModeA);<br></td></tr
><tr
id=sl_svn7768_4957
><td class="source">// backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_4958
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_4959
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4960
><td class="source"> colorCalc(rgb);<br></td></tr
><tr
id=sl_svn7768_4961
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_4962
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4963
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4964
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4965
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4966
><td class="source"> * See notes about alpha in background(x, y, z, a).<br></td></tr
><tr
id=sl_svn7768_4967
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4968
><td class="source"> public void background(int rgb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_4969
><td class="source">// if (format == RGB) {<br></td></tr
><tr
id=sl_svn7768_4970
><td class="source">// background(rgb); // ignore alpha for main drawing surface<br></td></tr
><tr
id=sl_svn7768_4971
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4972
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4973
><td class="source">// if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_4974
><td class="source">// background((float) rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4975
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_4976
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_4977
><td class="source">// colorCalcARGB(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4978
><td class="source">// backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_4979
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_4980
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4981
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_4982
><td class="source"> colorCalc(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_4983
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_4984
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4985
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4986
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4987
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4988
><td class="source"> * Set the background to a grayscale value, based on the<br></td></tr
><tr
id=sl_svn7768_4989
><td class="source"> * current colorMode.<br></td></tr
><tr
id=sl_svn7768_4990
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_4991
><td class="source"> public void background(float gray) {<br></td></tr
><tr
id=sl_svn7768_4992
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_4993
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_4994
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_4995
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_4996
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4997
><td class="source"><br></td></tr
><tr
id=sl_svn7768_4998
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_4999
><td class="source"> * See notes about alpha in background(x, y, z, a).<br></td></tr
><tr
id=sl_svn7768_5000
><td class="source"> * @param gray specifies a value between white and black<br></td></tr
><tr
id=sl_svn7768_5001
><td class="source"> * @param alpha opacity of the background<br></td></tr
><tr
id=sl_svn7768_5002
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5003
><td class="source"> public void background(float gray, float alpha) {<br></td></tr
><tr
id=sl_svn7768_5004
><td class="source"> if (format == RGB) {<br></td></tr
><tr
id=sl_svn7768_5005
><td class="source"> background(gray); // ignore alpha for main drawing surface<br></td></tr
><tr
id=sl_svn7768_5006
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5007
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5008
><td class="source"> colorCalc(gray, alpha);<br></td></tr
><tr
id=sl_svn7768_5009
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_5010
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_5011
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5012
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5013
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5014
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5015
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5016
><td class="source"> * Set the background to an r, g, b or h, s, b value,<br></td></tr
><tr
id=sl_svn7768_5017
><td class="source"> * based on the current colorMode.<br></td></tr
><tr
id=sl_svn7768_5018
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5019
><td class="source"> public void background(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_5020
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_5021
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_5022
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_5023
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5024
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5025
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5026
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5027
><td class="source"> * The &lt;b&gt;background()&lt;/b&gt; function sets the color used for the background of the Processing window. The default background is light gray. In the &lt;b&gt;draw()&lt;/b&gt; function, the background color is used to clear the display window at the beginning of each frame.<br></td></tr
><tr
id=sl_svn7768_5028
><td class="source"> * &lt;br&gt;&lt;br&gt;An image can also be used as the background for a sketch, however its width and height must be the same size as the sketch window. To resize an image &#39;b&#39; to the size of the sketch window, use b.resize(width, height).<br></td></tr
><tr
id=sl_svn7768_5029
><td class="source"> * &lt;br&gt;&lt;br&gt;Images used as background will ignore the current tint() setting.<br></td></tr
><tr
id=sl_svn7768_5030
><td class="source"> * &lt;br&gt;&lt;br&gt;It is not possible to use transparency (alpha) in background colors with the main drawing surface, however they will work properly with &lt;b&gt;createGraphics&lt;/b&gt;.<br></td></tr
><tr
id=sl_svn7768_5031
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5032
><td class="source"> * =advanced<br></td></tr
><tr
id=sl_svn7768_5033
><td class="source"> * &lt;p&gt;Clear the background with a color that includes an alpha value. This can<br></td></tr
><tr
id=sl_svn7768_5034
><td class="source"> * only be used with objects created by createGraphics(), because the main<br></td></tr
><tr
id=sl_svn7768_5035
><td class="source"> * drawing surface cannot be set transparent.&lt;/p&gt;<br></td></tr
><tr
id=sl_svn7768_5036
><td class="source"> * &lt;p&gt;It might be tempting to use this function to partially clear the screen<br></td></tr
><tr
id=sl_svn7768_5037
><td class="source"> * on each frame, however that&#39;s not how this function works. When calling<br></td></tr
><tr
id=sl_svn7768_5038
><td class="source"> * background(), the pixels will be replaced with pixels that have that level<br></td></tr
><tr
id=sl_svn7768_5039
><td class="source"> * of transparency. To do a semi-transparent overlay, use fill() with alpha<br></td></tr
><tr
id=sl_svn7768_5040
><td class="source"> * and draw a rectangle.&lt;/p&gt;<br></td></tr
><tr
id=sl_svn7768_5041
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5042
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_5043
><td class="source"> * @param x red or hue value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_5044
><td class="source"> * @param y green or saturation value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_5045
><td class="source"> * @param z blue or brightness value (depending on the current color mode)<br></td></tr
><tr
id=sl_svn7768_5046
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5047
><td class="source"> * @see PGraphics#stroke(float)<br></td></tr
><tr
id=sl_svn7768_5048
><td class="source"> * @see PGraphics#fill(float)<br></td></tr
><tr
id=sl_svn7768_5049
><td class="source"> * @see PGraphics#tint(float)<br></td></tr
><tr
id=sl_svn7768_5050
><td class="source"> * @see PGraphics#colorMode(int)<br></td></tr
><tr
id=sl_svn7768_5051
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5052
><td class="source"> public void background(float x, float y, float z, float a) {<br></td></tr
><tr
id=sl_svn7768_5053
><td class="source">// if (format == RGB) {<br></td></tr
><tr
id=sl_svn7768_5054
><td class="source">// background(x, y, z); // don&#39;t allow people to set alpha<br></td></tr
><tr
id=sl_svn7768_5055
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5056
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_5057
><td class="source">// colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_5058
><td class="source">// backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_5059
><td class="source">// backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_5060
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5061
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_5062
><td class="source"> backgroundFromCalc();<br></td></tr
><tr
id=sl_svn7768_5063
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5064
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5065
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5066
><td class="source"> protected void backgroundFromCalc() {<br></td></tr
><tr
id=sl_svn7768_5067
><td class="source"> backgroundR = calcR;<br></td></tr
><tr
id=sl_svn7768_5068
><td class="source"> backgroundG = calcG;<br></td></tr
><tr
id=sl_svn7768_5069
><td class="source"> backgroundB = calcB;<br></td></tr
><tr
id=sl_svn7768_5070
><td class="source"> backgroundA = (format == RGB) ? colorModeA : calcA;<br></td></tr
><tr
id=sl_svn7768_5071
><td class="source"> backgroundRi = calcRi;<br></td></tr
><tr
id=sl_svn7768_5072
><td class="source"> backgroundGi = calcGi;<br></td></tr
><tr
id=sl_svn7768_5073
><td class="source"> backgroundBi = calcBi;<br></td></tr
><tr
id=sl_svn7768_5074
><td class="source"> backgroundAi = (format == RGB) ? 255 : calcAi;<br></td></tr
><tr
id=sl_svn7768_5075
><td class="source"> backgroundAlpha = (format == RGB) ? false : calcAlpha;<br></td></tr
><tr
id=sl_svn7768_5076
><td class="source"> backgroundColor = calcColor;<br></td></tr
><tr
id=sl_svn7768_5077
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5078
><td class="source"> backgroundImpl();<br></td></tr
><tr
id=sl_svn7768_5079
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5080
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5081
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5082
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5083
><td class="source"> * Takes an RGB or ARGB image and sets it as the background.<br></td></tr
><tr
id=sl_svn7768_5084
><td class="source"> * The width and height of the image must be the same size as the sketch.<br></td></tr
><tr
id=sl_svn7768_5085
><td class="source"> * Use image.resize(width, height) to make short work of such a task.<br></td></tr
><tr
id=sl_svn7768_5086
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5087
><td class="source"> * Note that even if the image is set as RGB, the high 8 bits of each pixel<br></td></tr
><tr
id=sl_svn7768_5088
><td class="source"> * should be set opaque (0xFF000000), because the image data will be copied<br></td></tr
><tr
id=sl_svn7768_5089
><td class="source"> * directly to the screen, and non-opaque background images may have strange<br></td></tr
><tr
id=sl_svn7768_5090
><td class="source"> * behavior. Using image.filter(OPAQUE) will handle this easily.<br></td></tr
><tr
id=sl_svn7768_5091
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5092
><td class="source"> * When using 3D, this will also clear the zbuffer (if it exists).<br></td></tr
><tr
id=sl_svn7768_5093
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5094
><td class="source"> public void background(PImage image) {<br></td></tr
><tr
id=sl_svn7768_5095
><td class="source"> if ((image.width != width) || (image.height != height)) {<br></td></tr
><tr
id=sl_svn7768_5096
><td class="source"> throw new RuntimeException(ERROR_BACKGROUND_IMAGE_SIZE);<br></td></tr
><tr
id=sl_svn7768_5097
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5098
><td class="source"> if ((image.format != RGB) &amp;&amp; (image.format != ARGB)) {<br></td></tr
><tr
id=sl_svn7768_5099
><td class="source"> throw new RuntimeException(ERROR_BACKGROUND_IMAGE_FORMAT);<br></td></tr
><tr
id=sl_svn7768_5100
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5101
><td class="source"> backgroundColor = 0; // just zero it out for images<br></td></tr
><tr
id=sl_svn7768_5102
><td class="source"> backgroundImpl(image);<br></td></tr
><tr
id=sl_svn7768_5103
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5104
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5105
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5106
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5107
><td class="source"> * Actually set the background image. This is separated from the error<br></td></tr
><tr
id=sl_svn7768_5108
><td class="source"> * handling and other semantic goofiness that is shared across renderers.<br></td></tr
><tr
id=sl_svn7768_5109
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5110
><td class="source"> protected void backgroundImpl(PImage image) {<br></td></tr
><tr
id=sl_svn7768_5111
><td class="source"> // blit image to the screen<br></td></tr
><tr
id=sl_svn7768_5112
><td class="source"> set(0, 0, image);<br></td></tr
><tr
id=sl_svn7768_5113
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5114
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5115
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5116
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5117
><td class="source"> * Actual implementation of clearing the background, now that the<br></td></tr
><tr
id=sl_svn7768_5118
><td class="source"> * internal variables for background color have been set. Called by the<br></td></tr
><tr
id=sl_svn7768_5119
><td class="source"> * backgroundFromCalc() method, which is what all the other background()<br></td></tr
><tr
id=sl_svn7768_5120
><td class="source"> * methods call once the work is done.<br></td></tr
><tr
id=sl_svn7768_5121
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5122
><td class="source"> protected void backgroundImpl() {<br></td></tr
><tr
id=sl_svn7768_5123
><td class="source"> pushStyle();<br></td></tr
><tr
id=sl_svn7768_5124
><td class="source"> pushMatrix();<br></td></tr
><tr
id=sl_svn7768_5125
><td class="source"> resetMatrix();<br></td></tr
><tr
id=sl_svn7768_5126
><td class="source"> fill(backgroundColor);<br></td></tr
><tr
id=sl_svn7768_5127
><td class="source"> rect(0, 0, width, height);<br></td></tr
><tr
id=sl_svn7768_5128
><td class="source"> popMatrix();<br></td></tr
><tr
id=sl_svn7768_5129
><td class="source"> popStyle();<br></td></tr
><tr
id=sl_svn7768_5130
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5131
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5132
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5133
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5134
><td class="source"> * Callback to handle clearing the background when begin/endRaw is in use.<br></td></tr
><tr
id=sl_svn7768_5135
><td class="source"> * Handled as separate function for OpenGL (or other) subclasses that<br></td></tr
><tr
id=sl_svn7768_5136
><td class="source"> * override backgroundImpl() but still needs this to work properly.<br></td></tr
><tr
id=sl_svn7768_5137
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5138
><td class="source">// protected void backgroundRawImpl() {<br></td></tr
><tr
id=sl_svn7768_5139
><td class="source">// if (raw != null) {<br></td></tr
><tr
id=sl_svn7768_5140
><td class="source">// raw.colorMode(RGB, 1);<br></td></tr
><tr
id=sl_svn7768_5141
><td class="source">// raw.noStroke();<br></td></tr
><tr
id=sl_svn7768_5142
><td class="source">// raw.fill(backgroundR, backgroundG, backgroundB);<br></td></tr
><tr
id=sl_svn7768_5143
><td class="source">// raw.beginShape(TRIANGLES);<br></td></tr
><tr
id=sl_svn7768_5144
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5145
><td class="source">// raw.vertex(0, 0);<br></td></tr
><tr
id=sl_svn7768_5146
><td class="source">// raw.vertex(width, 0);<br></td></tr
><tr
id=sl_svn7768_5147
><td class="source">// raw.vertex(0, height);<br></td></tr
><tr
id=sl_svn7768_5148
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5149
><td class="source">// raw.vertex(width, 0);<br></td></tr
><tr
id=sl_svn7768_5150
><td class="source">// raw.vertex(width, height);<br></td></tr
><tr
id=sl_svn7768_5151
><td class="source">// raw.vertex(0, height);<br></td></tr
><tr
id=sl_svn7768_5152
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5153
><td class="source">// raw.endShape();<br></td></tr
><tr
id=sl_svn7768_5154
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5155
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5156
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5157
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5158
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5159
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5160
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5161
><td class="source"> // COLOR MODE<br></td></tr
><tr
id=sl_svn7768_5162
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5163
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5164
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5165
><td class="source"> * @param mode Either RGB or HSB, corresponding to Red/Green/Blue and Hue/Saturation/Brightness<br></td></tr
><tr
id=sl_svn7768_5166
><td class="source"> * @param max range for all color elements<br></td></tr
><tr
id=sl_svn7768_5167
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5168
><td class="source"> public void colorMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_5169
><td class="source"> colorMode(mode, colorModeX, colorModeY, colorModeZ, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5170
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5171
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5172
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5173
><td class="source"> public void colorMode(int mode, float max) {<br></td></tr
><tr
id=sl_svn7768_5174
><td class="source"> colorMode(mode, max, max, max, max);<br></td></tr
><tr
id=sl_svn7768_5175
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5176
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5177
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5178
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5179
><td class="source"> * Set the colorMode and the maximum values for (r, g, b)<br></td></tr
><tr
id=sl_svn7768_5180
><td class="source"> * or (h, s, b).<br></td></tr
><tr
id=sl_svn7768_5181
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5182
><td class="source"> * Note that this doesn&#39;t set the maximum for the alpha value,<br></td></tr
><tr
id=sl_svn7768_5183
><td class="source"> * which might be confusing if for instance you switched to<br></td></tr
><tr
id=sl_svn7768_5184
><td class="source"> * &lt;PRE&gt;colorMode(HSB, 360, 100, 100);&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_5185
><td class="source"> * because the alpha values were still between 0 and 255.<br></td></tr
><tr
id=sl_svn7768_5186
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5187
><td class="source"> public void colorMode(int mode, float maxX, float maxY, float maxZ) {<br></td></tr
><tr
id=sl_svn7768_5188
><td class="source"> colorMode(mode, maxX, maxY, maxZ, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5189
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5190
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5191
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5192
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5193
><td class="source"> * Changes the way Processing interprets color data. By default, the parameters for &lt;b&gt;fill()&lt;/b&gt;, &lt;b&gt;stroke()&lt;/b&gt;, &lt;b&gt;background()&lt;/b&gt;, and &lt;b&gt;color()&lt;/b&gt; are defined by values between 0 and 255 using the RGB color model. The &lt;b&gt;colorMode()&lt;/b&gt; function is used to change the numerical range used for specifying colors and to switch color systems. For example, calling &lt;b&gt;colorMode(RGB, 1.0)&lt;/b&gt; will specify that values are specified between 0 and 1. The limits for defining colors are altered by setting the parameters range1, range2, range3, and range 4.<br></td></tr
><tr
id=sl_svn7768_5194
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5195
><td class="source"> * @webref color:setting<br></td></tr
><tr
id=sl_svn7768_5196
><td class="source"> * @param maxX range for the red or hue depending on the current color mode<br></td></tr
><tr
id=sl_svn7768_5197
><td class="source"> * @param maxY range for the green or saturation depending on the current color mode<br></td></tr
><tr
id=sl_svn7768_5198
><td class="source"> * @param maxZ range for the blue or brightness depending on the current color mode<br></td></tr
><tr
id=sl_svn7768_5199
><td class="source"> * @param maxA range for the alpha<br></td></tr
><tr
id=sl_svn7768_5200
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5201
><td class="source"> * @see PGraphics#background(float)<br></td></tr
><tr
id=sl_svn7768_5202
><td class="source"> * @see PGraphics#fill(float)<br></td></tr
><tr
id=sl_svn7768_5203
><td class="source"> * @see PGraphics#stroke(float)<br></td></tr
><tr
id=sl_svn7768_5204
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5205
><td class="source"> public void colorMode(int mode,<br></td></tr
><tr
id=sl_svn7768_5206
><td class="source"> float maxX, float maxY, float maxZ, float maxA) {<br></td></tr
><tr
id=sl_svn7768_5207
><td class="source"> colorMode = mode;<br></td></tr
><tr
id=sl_svn7768_5208
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5209
><td class="source"> colorModeX = maxX; // still needs to be set for hsb<br></td></tr
><tr
id=sl_svn7768_5210
><td class="source"> colorModeY = maxY;<br></td></tr
><tr
id=sl_svn7768_5211
><td class="source"> colorModeZ = maxZ;<br></td></tr
><tr
id=sl_svn7768_5212
><td class="source"> colorModeA = maxA;<br></td></tr
><tr
id=sl_svn7768_5213
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5214
><td class="source"> // if color max values are all 1, then no need to scale<br></td></tr
><tr
id=sl_svn7768_5215
><td class="source"> colorModeScale =<br></td></tr
><tr
id=sl_svn7768_5216
><td class="source"> ((maxA != 1) || (maxX != maxY) || (maxY != maxZ) || (maxZ != maxA));<br></td></tr
><tr
id=sl_svn7768_5217
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5218
><td class="source"> // if color is rgb/0..255 this will make it easier for the<br></td></tr
><tr
id=sl_svn7768_5219
><td class="source"> // red() green() etc functions<br></td></tr
><tr
id=sl_svn7768_5220
><td class="source"> colorModeDefault = (colorMode == RGB) &amp;&amp;<br></td></tr
><tr
id=sl_svn7768_5221
><td class="source"> (colorModeA == 255) &amp;&amp; (colorModeX == 255) &amp;&amp;<br></td></tr
><tr
id=sl_svn7768_5222
><td class="source"> (colorModeY == 255) &amp;&amp; (colorModeZ == 255);<br></td></tr
><tr
id=sl_svn7768_5223
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5224
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5225
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5226
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5227
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5228
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5229
><td class="source"> // COLOR CALCULATIONS<br></td></tr
><tr
id=sl_svn7768_5230
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5231
><td class="source"> // Given input values for coloring, these functions will fill the calcXxxx<br></td></tr
><tr
id=sl_svn7768_5232
><td class="source"> // variables with values that have been properly filtered through the<br></td></tr
><tr
id=sl_svn7768_5233
><td class="source"> // current colorMode settings.<br></td></tr
><tr
id=sl_svn7768_5234
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5235
><td class="source"> // Renderers that need to subclass any drawing properties such as fill or<br></td></tr
><tr
id=sl_svn7768_5236
><td class="source"> // stroke will usally want to override methods like fillFromCalc (or the<br></td></tr
><tr
id=sl_svn7768_5237
><td class="source"> // same for stroke, ambient, etc.) That way the color calcuations are<br></td></tr
><tr
id=sl_svn7768_5238
><td class="source"> // covered by this based PGraphics class, leaving only a single function<br></td></tr
><tr
id=sl_svn7768_5239
><td class="source"> // to override/implement in the subclass.<br></td></tr
><tr
id=sl_svn7768_5240
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5241
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5242
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5243
><td class="source"> * Set the fill to either a grayscale value or an ARGB int.<br></td></tr
><tr
id=sl_svn7768_5244
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5245
><td class="source"> * The problem with this code is that it has to detect between these two<br></td></tr
><tr
id=sl_svn7768_5246
><td class="source"> * situations automatically. This is done by checking to see if the high bits<br></td></tr
><tr
id=sl_svn7768_5247
><td class="source"> * (the alpha for 0xAA000000) is set, and if not, whether the color value<br></td></tr
><tr
id=sl_svn7768_5248
><td class="source"> * that follows is less than colorModeX (first param passed to colorMode).<br></td></tr
><tr
id=sl_svn7768_5249
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5250
><td class="source"> * This auto-detect would break in the following situation:<br></td></tr
><tr
id=sl_svn7768_5251
><td class="source"> * &lt;PRE&gt;size(256, 256);<br></td></tr
><tr
id=sl_svn7768_5252
><td class="source"> * for (int i = 0; i &lt; 256; i++) {<br></td></tr
><tr
id=sl_svn7768_5253
><td class="source"> * color c = color(0, 0, 0, i);<br></td></tr
><tr
id=sl_svn7768_5254
><td class="source"> * stroke(c);<br></td></tr
><tr
id=sl_svn7768_5255
><td class="source"> * line(i, 0, i, 256);<br></td></tr
><tr
id=sl_svn7768_5256
><td class="source"> * }&lt;/PRE&gt;<br></td></tr
><tr
id=sl_svn7768_5257
><td class="source"> * ...on the first time through the loop, where (i == 0), since the color<br></td></tr
><tr
id=sl_svn7768_5258
><td class="source"> * itself is zero (black) then it would appear indistinguishable from code<br></td></tr
><tr
id=sl_svn7768_5259
><td class="source"> * that reads &quot;fill(0)&quot;. The solution is to use the four parameter versions<br></td></tr
><tr
id=sl_svn7768_5260
><td class="source"> * of stroke or fill to more directly specify the desired result.<br></td></tr
><tr
id=sl_svn7768_5261
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5262
><td class="source"> protected void colorCalc(int rgb) {<br></td></tr
><tr
id=sl_svn7768_5263
><td class="source"> if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_5264
><td class="source"> colorCalc((float) rgb);<br></td></tr
><tr
id=sl_svn7768_5265
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5266
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5267
><td class="source"> colorCalcARGB(rgb, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5268
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5269
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5270
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5271
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5272
><td class="source"> protected void colorCalc(int rgb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_5273
><td class="source"> if (((rgb &amp; 0xff000000) == 0) &amp;&amp; (rgb &lt;= colorModeX)) { // see above<br></td></tr
><tr
id=sl_svn7768_5274
><td class="source"> colorCalc((float) rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_5275
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5276
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5277
><td class="source"> colorCalcARGB(rgb, alpha);<br></td></tr
><tr
id=sl_svn7768_5278
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5279
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5280
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5281
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5282
><td class="source"> protected void colorCalc(float gray) {<br></td></tr
><tr
id=sl_svn7768_5283
><td class="source"> colorCalc(gray, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5284
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5285
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5286
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5287
><td class="source"> protected void colorCalc(float gray, float alpha) {<br></td></tr
><tr
id=sl_svn7768_5288
><td class="source"> if (gray &gt; colorModeX) gray = colorModeX;<br></td></tr
><tr
id=sl_svn7768_5289
><td class="source"> if (alpha &gt; colorModeA) alpha = colorModeA;<br></td></tr
><tr
id=sl_svn7768_5290
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5291
><td class="source"> if (gray &lt; 0) gray = 0;<br></td></tr
><tr
id=sl_svn7768_5292
><td class="source"> if (alpha &lt; 0) alpha = 0;<br></td></tr
><tr
id=sl_svn7768_5293
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5294
><td class="source"> calcR = colorModeScale ? (gray / colorModeX) : gray;<br></td></tr
><tr
id=sl_svn7768_5295
><td class="source"> calcG = calcR;<br></td></tr
><tr
id=sl_svn7768_5296
><td class="source"> calcB = calcR;<br></td></tr
><tr
id=sl_svn7768_5297
><td class="source"> calcA = colorModeScale ? (alpha / colorModeA) : alpha;<br></td></tr
><tr
id=sl_svn7768_5298
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5299
><td class="source"> calcRi = (int)(calcR*255); calcGi = (int)(calcG*255);<br></td></tr
><tr
id=sl_svn7768_5300
><td class="source"> calcBi = (int)(calcB*255); calcAi = (int)(calcA*255);<br></td></tr
><tr
id=sl_svn7768_5301
><td class="source"> calcColor = (calcAi &lt;&lt; 24) | (calcRi &lt;&lt; 16) | (calcGi &lt;&lt; 8) | calcBi;<br></td></tr
><tr
id=sl_svn7768_5302
><td class="source"> calcAlpha = (calcAi != 255);<br></td></tr
><tr
id=sl_svn7768_5303
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5304
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5305
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5306
><td class="source"> protected void colorCalc(float x, float y, float z) {<br></td></tr
><tr
id=sl_svn7768_5307
><td class="source"> colorCalc(x, y, z, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5308
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5309
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5310
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5311
><td class="source"> protected void colorCalc(float x, float y, float z, float a) {<br></td></tr
><tr
id=sl_svn7768_5312
><td class="source"> if (x &gt; colorModeX) x = colorModeX;<br></td></tr
><tr
id=sl_svn7768_5313
><td class="source"> if (y &gt; colorModeY) y = colorModeY;<br></td></tr
><tr
id=sl_svn7768_5314
><td class="source"> if (z &gt; colorModeZ) z = colorModeZ;<br></td></tr
><tr
id=sl_svn7768_5315
><td class="source"> if (a &gt; colorModeA) a = colorModeA;<br></td></tr
><tr
id=sl_svn7768_5316
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5317
><td class="source"> if (x &lt; 0) x = 0;<br></td></tr
><tr
id=sl_svn7768_5318
><td class="source"> if (y &lt; 0) y = 0;<br></td></tr
><tr
id=sl_svn7768_5319
><td class="source"> if (z &lt; 0) z = 0;<br></td></tr
><tr
id=sl_svn7768_5320
><td class="source"> if (a &lt; 0) a = 0;<br></td></tr
><tr
id=sl_svn7768_5321
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5322
><td class="source"> switch (colorMode) {<br></td></tr
><tr
id=sl_svn7768_5323
><td class="source"> case RGB:<br></td></tr
><tr
id=sl_svn7768_5324
><td class="source"> if (colorModeScale) {<br></td></tr
><tr
id=sl_svn7768_5325
><td class="source"> calcR = x / colorModeX;<br></td></tr
><tr
id=sl_svn7768_5326
><td class="source"> calcG = y / colorModeY;<br></td></tr
><tr
id=sl_svn7768_5327
><td class="source"> calcB = z / colorModeZ;<br></td></tr
><tr
id=sl_svn7768_5328
><td class="source"> calcA = a / colorModeA;<br></td></tr
><tr
id=sl_svn7768_5329
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5330
><td class="source"> calcR = x; calcG = y; calcB = z; calcA = a;<br></td></tr
><tr
id=sl_svn7768_5331
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5332
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_5333
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5334
><td class="source"> case HSB:<br></td></tr
><tr
id=sl_svn7768_5335
><td class="source"> x /= colorModeX; // h<br></td></tr
><tr
id=sl_svn7768_5336
><td class="source"> y /= colorModeY; // s<br></td></tr
><tr
id=sl_svn7768_5337
><td class="source"> z /= colorModeZ; // b<br></td></tr
><tr
id=sl_svn7768_5338
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5339
><td class="source"> calcA = colorModeScale ? (a/colorModeA) : a;<br></td></tr
><tr
id=sl_svn7768_5340
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5341
><td class="source"> if (y == 0) { // saturation == 0<br></td></tr
><tr
id=sl_svn7768_5342
><td class="source"> calcR = calcG = calcB = z;<br></td></tr
><tr
id=sl_svn7768_5343
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5344
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5345
><td class="source"> float which = (x - (int)x) * 6.0f;<br></td></tr
><tr
id=sl_svn7768_5346
><td class="source"> float f = which - (int)which;<br></td></tr
><tr
id=sl_svn7768_5347
><td class="source"> float p = z * (1.0f - y);<br></td></tr
><tr
id=sl_svn7768_5348
><td class="source"> float q = z * (1.0f - y * f);<br></td></tr
><tr
id=sl_svn7768_5349
><td class="source"> float t = z * (1.0f - (y * (1.0f - f)));<br></td></tr
><tr
id=sl_svn7768_5350
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5351
><td class="source"> switch ((int)which) {<br></td></tr
><tr
id=sl_svn7768_5352
><td class="source"> case 0: calcR = z; calcG = t; calcB = p; break;<br></td></tr
><tr
id=sl_svn7768_5353
><td class="source"> case 1: calcR = q; calcG = z; calcB = p; break;<br></td></tr
><tr
id=sl_svn7768_5354
><td class="source"> case 2: calcR = p; calcG = z; calcB = t; break;<br></td></tr
><tr
id=sl_svn7768_5355
><td class="source"> case 3: calcR = p; calcG = q; calcB = z; break;<br></td></tr
><tr
id=sl_svn7768_5356
><td class="source"> case 4: calcR = t; calcG = p; calcB = z; break;<br></td></tr
><tr
id=sl_svn7768_5357
><td class="source"> case 5: calcR = z; calcG = p; calcB = q; break;<br></td></tr
><tr
id=sl_svn7768_5358
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5359
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5360
><td class="source"> break;<br></td></tr
><tr
id=sl_svn7768_5361
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5362
><td class="source"> calcRi = (int)(255*calcR); calcGi = (int)(255*calcG);<br></td></tr
><tr
id=sl_svn7768_5363
><td class="source"> calcBi = (int)(255*calcB); calcAi = (int)(255*calcA);<br></td></tr
><tr
id=sl_svn7768_5364
><td class="source"> calcColor = (calcAi &lt;&lt; 24) | (calcRi &lt;&lt; 16) | (calcGi &lt;&lt; 8) | calcBi;<br></td></tr
><tr
id=sl_svn7768_5365
><td class="source"> calcAlpha = (calcAi != 255);<br></td></tr
><tr
id=sl_svn7768_5366
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5367
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5368
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5369
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5370
><td class="source"> * Unpacks AARRGGBB color for direct use with colorCalc.<br></td></tr
><tr
id=sl_svn7768_5371
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5372
><td class="source"> * Handled here with its own function since this is indepenent<br></td></tr
><tr
id=sl_svn7768_5373
><td class="source"> * of the color mode.<br></td></tr
><tr
id=sl_svn7768_5374
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5375
><td class="source"> * Strangely the old version of this code ignored the alpha<br></td></tr
><tr
id=sl_svn7768_5376
><td class="source"> * value. not sure if that was a bug or what.<br></td></tr
><tr
id=sl_svn7768_5377
><td class="source"> * &lt;P&gt;<br></td></tr
><tr
id=sl_svn7768_5378
><td class="source"> * Note, no need for a bounds check since it&#39;s a 32 bit number.<br></td></tr
><tr
id=sl_svn7768_5379
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5380
><td class="source"> protected void colorCalcARGB(int argb, float alpha) {<br></td></tr
><tr
id=sl_svn7768_5381
><td class="source"> if (alpha == colorModeA) {<br></td></tr
><tr
id=sl_svn7768_5382
><td class="source"> calcAi = (argb &gt;&gt; 24) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5383
><td class="source"> calcColor = argb;<br></td></tr
><tr
id=sl_svn7768_5384
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5385
><td class="source"> calcAi = (int) (((argb &gt;&gt; 24) &amp; 0xff) * (alpha / colorModeA));<br></td></tr
><tr
id=sl_svn7768_5386
><td class="source"> calcColor = (calcAi &lt;&lt; 24) | (argb &amp; 0xFFFFFF);<br></td></tr
><tr
id=sl_svn7768_5387
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5388
><td class="source"> calcRi = (argb &gt;&gt; 16) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5389
><td class="source"> calcGi = (argb &gt;&gt; 8) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5390
><td class="source"> calcBi = argb &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5391
><td class="source"> calcA = (float)calcAi / 255.0f;<br></td></tr
><tr
id=sl_svn7768_5392
><td class="source"> calcR = (float)calcRi / 255.0f;<br></td></tr
><tr
id=sl_svn7768_5393
><td class="source"> calcG = (float)calcGi / 255.0f;<br></td></tr
><tr
id=sl_svn7768_5394
><td class="source"> calcB = (float)calcBi / 255.0f;<br></td></tr
><tr
id=sl_svn7768_5395
><td class="source"> calcAlpha = (calcAi != 255);<br></td></tr
><tr
id=sl_svn7768_5396
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5397
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5398
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5399
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5400
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5401
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5402
><td class="source"> // COLOR DATATYPE STUFFING<br></td></tr
><tr
id=sl_svn7768_5403
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5404
><td class="source"> // The &#39;color&#39; primitive type in Processing syntax is in fact a 32-bit int.<br></td></tr
><tr
id=sl_svn7768_5405
><td class="source"> // These functions handle stuffing color values into a 32-bit cage based<br></td></tr
><tr
id=sl_svn7768_5406
><td class="source"> // on the current colorMode settings.<br></td></tr
><tr
id=sl_svn7768_5407
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5408
><td class="source"> // These functions are really slow (because they take the current colorMode<br></td></tr
><tr
id=sl_svn7768_5409
><td class="source"> // into account), but they&#39;re easy to use. Advanced users can write their<br></td></tr
><tr
id=sl_svn7768_5410
><td class="source"> // own bit shifting operations to setup &#39;color&#39; data types.<br></td></tr
><tr
id=sl_svn7768_5411
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5412
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5413
><td class="source"> public final int color(int c) { // ignore<br></td></tr
><tr
id=sl_svn7768_5414
><td class="source">// if (((c &amp; 0xff000000) == 0) &amp;&amp; (c &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_5415
><td class="source">// if (colorModeDefault) {<br></td></tr
><tr
id=sl_svn7768_5416
><td class="source">// // bounds checking to make sure the numbers aren&#39;t to high or low<br></td></tr
><tr
id=sl_svn7768_5417
><td class="source">// if (c &gt; 255) c = 255; else if (c &lt; 0) c = 0;<br></td></tr
><tr
id=sl_svn7768_5418
><td class="source">// return 0xff000000 | (c &lt;&lt; 16) | (c &lt;&lt; 8) | c;<br></td></tr
><tr
id=sl_svn7768_5419
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_5420
><td class="source">// colorCalc(c);<br></td></tr
><tr
id=sl_svn7768_5421
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5422
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_5423
><td class="source">// colorCalcARGB(c, colorModeA);<br></td></tr
><tr
id=sl_svn7768_5424
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5425
><td class="source"> colorCalc(c);<br></td></tr
><tr
id=sl_svn7768_5426
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5427
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5428
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5429
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5430
><td class="source"> public final int color(float gray) { // ignore<br></td></tr
><tr
id=sl_svn7768_5431
><td class="source"> colorCalc(gray);<br></td></tr
><tr
id=sl_svn7768_5432
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5433
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5434
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5435
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5436
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5437
><td class="source"> * @param c can be packed ARGB or a gray in this case<br></td></tr
><tr
id=sl_svn7768_5438
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5439
><td class="source"> public final int color(int c, int alpha) { // ignore<br></td></tr
><tr
id=sl_svn7768_5440
><td class="source">// if (colorModeDefault) {<br></td></tr
><tr
id=sl_svn7768_5441
><td class="source">// // bounds checking to make sure the numbers aren&#39;t to high or low<br></td></tr
><tr
id=sl_svn7768_5442
><td class="source">// if (c &gt; 255) c = 255; else if (c &lt; 0) c = 0;<br></td></tr
><tr
id=sl_svn7768_5443
><td class="source">// if (alpha &gt; 255) alpha = 255; else if (alpha &lt; 0) alpha = 0;<br></td></tr
><tr
id=sl_svn7768_5444
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5445
><td class="source">// return ((alpha &amp; 0xff) &lt;&lt; 24) | (c &lt;&lt; 16) | (c &lt;&lt; 8) | c;<br></td></tr
><tr
id=sl_svn7768_5446
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5447
><td class="source"> colorCalc(c, alpha);<br></td></tr
><tr
id=sl_svn7768_5448
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5449
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5450
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5451
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5452
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5453
><td class="source"> * @param c can be packed ARGB or a gray in this case<br></td></tr
><tr
id=sl_svn7768_5454
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5455
><td class="source"> public final int color(int c, float alpha) { // ignore<br></td></tr
><tr
id=sl_svn7768_5456
><td class="source">// if (((c &amp; 0xff000000) == 0) &amp;&amp; (c &lt;= colorModeX)) {<br></td></tr
><tr
id=sl_svn7768_5457
><td class="source"> colorCalc(c, alpha);<br></td></tr
><tr
id=sl_svn7768_5458
><td class="source">// } else {<br></td></tr
><tr
id=sl_svn7768_5459
><td class="source">// colorCalcARGB(c, alpha);<br></td></tr
><tr
id=sl_svn7768_5460
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5461
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5462
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5463
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5464
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5465
><td class="source"> public final int color(float gray, float alpha) { // ignore<br></td></tr
><tr
id=sl_svn7768_5466
><td class="source"> colorCalc(gray, alpha);<br></td></tr
><tr
id=sl_svn7768_5467
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5468
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5469
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5470
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5471
><td class="source"> public final int color(int x, int y, int z) { // ignore<br></td></tr
><tr
id=sl_svn7768_5472
><td class="source">// if (colorModeDefault) {<br></td></tr
><tr
id=sl_svn7768_5473
><td class="source">// // bounds checking to make sure the numbers aren&#39;t to high or low<br></td></tr
><tr
id=sl_svn7768_5474
><td class="source">// if (x &gt; 255) x = 255; else if (x &lt; 0) x = 0;<br></td></tr
><tr
id=sl_svn7768_5475
><td class="source">// if (y &gt; 255) y = 255; else if (y &lt; 0) y = 0;<br></td></tr
><tr
id=sl_svn7768_5476
><td class="source">// if (z &gt; 255) z = 255; else if (z &lt; 0) z = 0;<br></td></tr
><tr
id=sl_svn7768_5477
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5478
><td class="source">// return 0xff000000 | (x &lt;&lt; 16) | (y &lt;&lt; 8) | z;<br></td></tr
><tr
id=sl_svn7768_5479
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5480
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_5481
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5482
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5483
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5484
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5485
><td class="source"> public final int color(float x, float y, float z) { // ignore<br></td></tr
><tr
id=sl_svn7768_5486
><td class="source"> colorCalc(x, y, z);<br></td></tr
><tr
id=sl_svn7768_5487
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5488
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5489
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5490
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5491
><td class="source"> public final int color(int x, int y, int z, int a) { // ignore<br></td></tr
><tr
id=sl_svn7768_5492
><td class="source">// if (colorModeDefault) {<br></td></tr
><tr
id=sl_svn7768_5493
><td class="source">// // bounds checking to make sure the numbers aren&#39;t to high or low<br></td></tr
><tr
id=sl_svn7768_5494
><td class="source">// if (a &gt; 255) a = 255; else if (a &lt; 0) a = 0;<br></td></tr
><tr
id=sl_svn7768_5495
><td class="source">// if (x &gt; 255) x = 255; else if (x &lt; 0) x = 0;<br></td></tr
><tr
id=sl_svn7768_5496
><td class="source">// if (y &gt; 255) y = 255; else if (y &lt; 0) y = 0;<br></td></tr
><tr
id=sl_svn7768_5497
><td class="source">// if (z &gt; 255) z = 255; else if (z &lt; 0) z = 0;<br></td></tr
><tr
id=sl_svn7768_5498
><td class="source">//<br></td></tr
><tr
id=sl_svn7768_5499
><td class="source">// return (a &lt;&lt; 24) | (x &lt;&lt; 16) | (y &lt;&lt; 8) | z;<br></td></tr
><tr
id=sl_svn7768_5500
><td class="source">// }<br></td></tr
><tr
id=sl_svn7768_5501
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_5502
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5503
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5504
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5505
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5506
><td class="source"> public final int color(float x, float y, float z, float a) { // ignore<br></td></tr
><tr
id=sl_svn7768_5507
><td class="source"> colorCalc(x, y, z, a);<br></td></tr
><tr
id=sl_svn7768_5508
><td class="source"> return calcColor;<br></td></tr
><tr
id=sl_svn7768_5509
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5510
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5511
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5512
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5513
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5514
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5515
><td class="source"> // COLOR DATATYPE EXTRACTION<br></td></tr
><tr
id=sl_svn7768_5516
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5517
><td class="source"> // Vee have veys of making the colors talk.<br></td></tr
><tr
id=sl_svn7768_5518
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5519
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5520
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5521
><td class="source"> * Extracts the alpha value from a color.<br></td></tr
><tr
id=sl_svn7768_5522
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5523
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5524
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5525
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5526
><td class="source"> public final float alpha(int what) {<br></td></tr
><tr
id=sl_svn7768_5527
><td class="source"> float c = (what &gt;&gt; 24) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5528
><td class="source"> if (colorModeA == 255) return c;<br></td></tr
><tr
id=sl_svn7768_5529
><td class="source"> return (c / 255.0f) * colorModeA;<br></td></tr
><tr
id=sl_svn7768_5530
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5531
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5532
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5533
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5534
><td class="source"> * Extracts the red value from a color, scaled to match current &lt;b&gt;colorMode()&lt;/b&gt;. This value is always returned as a float so be careful not to assign it to an int value.&lt;br&gt;&lt;br&gt;The red() function is easy to use and undestand, but is slower than another technique. To achieve the same results when working in &lt;b&gt;colorMode(RGB, 255)&lt;/b&gt;, but with greater speed, use the &amp;gt;&amp;gt; (right shift) operator with a bit mask. For example, the following two lines of code are equivalent:&lt;br&gt;&lt;pre&gt;float r1 = red(myColor);&lt;br&gt;float r2 = myColor &amp;gt;&amp;gt; 16 &amp;amp; 0xFF;&lt;/pre&gt;<br></td></tr
><tr
id=sl_svn7768_5535
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5536
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5537
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5538
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5539
><td class="source"> * @see PGraphics#green(int)<br></td></tr
><tr
id=sl_svn7768_5540
><td class="source"> * @see PGraphics#blue(int)<br></td></tr
><tr
id=sl_svn7768_5541
><td class="source"> * @see PGraphics#hue(int)<br></td></tr
><tr
id=sl_svn7768_5542
><td class="source"> * @see PGraphics#saturation(int)<br></td></tr
><tr
id=sl_svn7768_5543
><td class="source"> * @see PGraphics#brightness(int)<br></td></tr
><tr
id=sl_svn7768_5544
><td class="source"> * @ref rightshift<br></td></tr
><tr
id=sl_svn7768_5545
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5546
><td class="source"> public final float red(int what) {<br></td></tr
><tr
id=sl_svn7768_5547
><td class="source"> float c = (what &gt;&gt; 16) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5548
><td class="source"> if (colorModeDefault) return c;<br></td></tr
><tr
id=sl_svn7768_5549
><td class="source"> return (c / 255.0f) * colorModeX;<br></td></tr
><tr
id=sl_svn7768_5550
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5551
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5552
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5553
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5554
><td class="source"> * Extracts the green value from a color, scaled to match current &lt;b&gt;colorMode()&lt;/b&gt;. This value is always returned as a float so be careful not to assign it to an int value.&lt;br&gt;&lt;br&gt;The &lt;b&gt;green()&lt;/b&gt; function is easy to use and undestand, but is slower than another technique. To achieve the same results when working in &lt;b&gt;colorMode(RGB, 255)&lt;/b&gt;, but with greater speed, use the &amp;gt;&amp;gt; (right shift) operator with a bit mask. For example, the following two lines of code are equivalent:&lt;br&gt;&lt;pre&gt;float r1 = green(myColor);&lt;br&gt;float r2 = myColor &amp;gt;&amp;gt; 8 &amp;amp; 0xFF;&lt;/pre&gt;<br></td></tr
><tr
id=sl_svn7768_5555
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5556
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5557
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5558
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5559
><td class="source"> * @see PGraphics#red(int)<br></td></tr
><tr
id=sl_svn7768_5560
><td class="source"> * @see PGraphics#blue(int)<br></td></tr
><tr
id=sl_svn7768_5561
><td class="source"> * @see PGraphics#hue(int)<br></td></tr
><tr
id=sl_svn7768_5562
><td class="source"> * @see PGraphics#saturation(int)<br></td></tr
><tr
id=sl_svn7768_5563
><td class="source"> * @see PGraphics#brightness(int)<br></td></tr
><tr
id=sl_svn7768_5564
><td class="source"> * @ref rightshift<br></td></tr
><tr
id=sl_svn7768_5565
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5566
><td class="source"> public final float green(int what) {<br></td></tr
><tr
id=sl_svn7768_5567
><td class="source"> float c = (what &gt;&gt; 8) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5568
><td class="source"> if (colorModeDefault) return c;<br></td></tr
><tr
id=sl_svn7768_5569
><td class="source"> return (c / 255.0f) * colorModeY;<br></td></tr
><tr
id=sl_svn7768_5570
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5571
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5572
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5573
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5574
><td class="source"> * Extracts the blue value from a color, scaled to match current &lt;b&gt;colorMode()&lt;/b&gt;. This value is always returned as a float so be careful not to assign it to an int value.&lt;br&gt;&lt;br&gt;The &lt;b&gt;blue()&lt;/b&gt; function is easy to use and undestand, but is slower than another technique. To achieve the same results when working in &lt;b&gt;colorMode(RGB, 255)&lt;/b&gt;, but with greater speed, use a bit mask to remove the other color components. For example, the following two lines of code are equivalent:&lt;br&gt;&lt;pre&gt;float r1 = blue(myColor);&lt;br&gt;float r2 = myColor &amp;amp; 0xFF;&lt;/pre&gt;<br></td></tr
><tr
id=sl_svn7768_5575
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5576
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5577
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5578
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5579
><td class="source"> * @see PGraphics#red(int)<br></td></tr
><tr
id=sl_svn7768_5580
><td class="source"> * @see PGraphics#green(int)<br></td></tr
><tr
id=sl_svn7768_5581
><td class="source"> * @see PGraphics#hue(int)<br></td></tr
><tr
id=sl_svn7768_5582
><td class="source"> * @see PGraphics#saturation(int)<br></td></tr
><tr
id=sl_svn7768_5583
><td class="source"> * @see PGraphics#brightness(int)<br></td></tr
><tr
id=sl_svn7768_5584
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5585
><td class="source"> public final float blue(int what) {<br></td></tr
><tr
id=sl_svn7768_5586
><td class="source"> float c = (what) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5587
><td class="source"> if (colorModeDefault) return c;<br></td></tr
><tr
id=sl_svn7768_5588
><td class="source"> return (c / 255.0f) * colorModeZ;<br></td></tr
><tr
id=sl_svn7768_5589
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5590
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5591
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5592
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5593
><td class="source"> * Extracts the hue value from a color.<br></td></tr
><tr
id=sl_svn7768_5594
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5595
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5596
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5597
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5598
><td class="source"> * @see PGraphics#red(int)<br></td></tr
><tr
id=sl_svn7768_5599
><td class="source"> * @see PGraphics#green(int)<br></td></tr
><tr
id=sl_svn7768_5600
><td class="source"> * @see PGraphics#blue(int)<br></td></tr
><tr
id=sl_svn7768_5601
><td class="source"> * @see PGraphics#saturation(int)<br></td></tr
><tr
id=sl_svn7768_5602
><td class="source"> * @see PGraphics#brightness(int)<br></td></tr
><tr
id=sl_svn7768_5603
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5604
><td class="source"> public final float hue(int what) {<br></td></tr
><tr
id=sl_svn7768_5605
><td class="source"> if (what != cacheHsbKey) {<br></td></tr
><tr
id=sl_svn7768_5606
><td class="source"> Color.RGBtoHSB((what &gt;&gt; 16) &amp; 0xff, (what &gt;&gt; 8) &amp; 0xff,<br></td></tr
><tr
id=sl_svn7768_5607
><td class="source"> what &amp; 0xff, cacheHsbValue);<br></td></tr
><tr
id=sl_svn7768_5608
><td class="source"> cacheHsbKey = what;<br></td></tr
><tr
id=sl_svn7768_5609
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5610
><td class="source"> return cacheHsbValue[0] * colorModeX;<br></td></tr
><tr
id=sl_svn7768_5611
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5612
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5613
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5614
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5615
><td class="source"> * Extracts the saturation value from a color.<br></td></tr
><tr
id=sl_svn7768_5616
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5617
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5618
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5619
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5620
><td class="source"> * @see PGraphics#red(int)<br></td></tr
><tr
id=sl_svn7768_5621
><td class="source"> * @see PGraphics#green(int)<br></td></tr
><tr
id=sl_svn7768_5622
><td class="source"> * @see PGraphics#blue(int)<br></td></tr
><tr
id=sl_svn7768_5623
><td class="source"> * @see PGraphics#hue(int)<br></td></tr
><tr
id=sl_svn7768_5624
><td class="source"> * @see PGraphics#brightness(int)<br></td></tr
><tr
id=sl_svn7768_5625
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5626
><td class="source"> public final float saturation(int what) {<br></td></tr
><tr
id=sl_svn7768_5627
><td class="source"> if (what != cacheHsbKey) {<br></td></tr
><tr
id=sl_svn7768_5628
><td class="source"> Color.RGBtoHSB((what &gt;&gt; 16) &amp; 0xff, (what &gt;&gt; 8) &amp; 0xff,<br></td></tr
><tr
id=sl_svn7768_5629
><td class="source"> what &amp; 0xff, cacheHsbValue);<br></td></tr
><tr
id=sl_svn7768_5630
><td class="source"> cacheHsbKey = what;<br></td></tr
><tr
id=sl_svn7768_5631
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5632
><td class="source"> return cacheHsbValue[1] * colorModeY;<br></td></tr
><tr
id=sl_svn7768_5633
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5634
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5635
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5636
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5637
><td class="source"> * Extracts the brightness value from a color.<br></td></tr
><tr
id=sl_svn7768_5638
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5639
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5640
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5641
><td class="source"> * @param what any value of the color datatype<br></td></tr
><tr
id=sl_svn7768_5642
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5643
><td class="source"> * @see PGraphics#red(int)<br></td></tr
><tr
id=sl_svn7768_5644
><td class="source"> * @see PGraphics#green(int)<br></td></tr
><tr
id=sl_svn7768_5645
><td class="source"> * @see PGraphics#blue(int)<br></td></tr
><tr
id=sl_svn7768_5646
><td class="source"> * @see PGraphics#hue(int)<br></td></tr
><tr
id=sl_svn7768_5647
><td class="source"> * @see PGraphics#saturation(int)<br></td></tr
><tr
id=sl_svn7768_5648
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5649
><td class="source"> public final float brightness(int what) {<br></td></tr
><tr
id=sl_svn7768_5650
><td class="source"> if (what != cacheHsbKey) {<br></td></tr
><tr
id=sl_svn7768_5651
><td class="source"> Color.RGBtoHSB((what &gt;&gt; 16) &amp; 0xff, (what &gt;&gt; 8) &amp; 0xff,<br></td></tr
><tr
id=sl_svn7768_5652
><td class="source"> what &amp; 0xff, cacheHsbValue);<br></td></tr
><tr
id=sl_svn7768_5653
><td class="source"> cacheHsbKey = what;<br></td></tr
><tr
id=sl_svn7768_5654
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5655
><td class="source"> return cacheHsbValue[2] * colorModeZ;<br></td></tr
><tr
id=sl_svn7768_5656
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5657
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5658
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5659
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5660
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5661
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5662
><td class="source"> // COLOR DATATYPE INTERPOLATION<br></td></tr
><tr
id=sl_svn7768_5663
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5664
><td class="source"> // Against our better judgement.<br></td></tr
><tr
id=sl_svn7768_5665
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5666
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5667
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5668
><td class="source"> * Calculates a color or colors between two color at a specific increment. The &lt;b&gt;amt&lt;/b&gt; parameter is the amount to interpolate between the two values where 0.0 equal to the first point, 0.1 is very near the first point, 0.5 is half-way in between, etc.<br></td></tr
><tr
id=sl_svn7768_5669
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5670
><td class="source"> * @webref color:creating_reading<br></td></tr
><tr
id=sl_svn7768_5671
><td class="source"> * @param c1 interpolate from this color<br></td></tr
><tr
id=sl_svn7768_5672
><td class="source"> * @param c2 interpolate to this color<br></td></tr
><tr
id=sl_svn7768_5673
><td class="source"> * @param amt between 0.0 and 1.0<br></td></tr
><tr
id=sl_svn7768_5674
><td class="source"> *<br></td></tr
><tr
id=sl_svn7768_5675
><td class="source"> * @see PGraphics#blendColor(int, int, int)<br></td></tr
><tr
id=sl_svn7768_5676
><td class="source"> * @see PGraphics#color(float, float, float, float)<br></td></tr
><tr
id=sl_svn7768_5677
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5678
><td class="source"> public int lerpColor(int c1, int c2, float amt) {<br></td></tr
><tr
id=sl_svn7768_5679
><td class="source"> return lerpColor(c1, c2, amt, colorMode);<br></td></tr
><tr
id=sl_svn7768_5680
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5681
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5682
><td class="source"> static float[] lerpColorHSB1;<br></td></tr
><tr
id=sl_svn7768_5683
><td class="source"> static float[] lerpColorHSB2;<br></td></tr
><tr
id=sl_svn7768_5684
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5685
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5686
><td class="source"> * Interpolate between two colors. Like lerp(), but for the<br></td></tr
><tr
id=sl_svn7768_5687
><td class="source"> * individual color components of a color supplied as an int value.<br></td></tr
><tr
id=sl_svn7768_5688
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5689
><td class="source"> static public int lerpColor(int c1, int c2, float amt, int mode) {<br></td></tr
><tr
id=sl_svn7768_5690
><td class="source"> if (mode == RGB) {<br></td></tr
><tr
id=sl_svn7768_5691
><td class="source"> float a1 = ((c1 &gt;&gt; 24) &amp; 0xff);<br></td></tr
><tr
id=sl_svn7768_5692
><td class="source"> float r1 = (c1 &gt;&gt; 16) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5693
><td class="source"> float g1 = (c1 &gt;&gt; 8) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5694
><td class="source"> float b1 = c1 &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5695
><td class="source"> float a2 = (c2 &gt;&gt; 24) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5696
><td class="source"> float r2 = (c2 &gt;&gt; 16) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5697
><td class="source"> float g2 = (c2 &gt;&gt; 8) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5698
><td class="source"> float b2 = c2 &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5699
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5700
><td class="source"> return (((int) (a1 + (a2-a1)*amt) &lt;&lt; 24) |<br></td></tr
><tr
id=sl_svn7768_5701
><td class="source"> ((int) (r1 + (r2-r1)*amt) &lt;&lt; 16) |<br></td></tr
><tr
id=sl_svn7768_5702
><td class="source"> ((int) (g1 + (g2-g1)*amt) &lt;&lt; 8) |<br></td></tr
><tr
id=sl_svn7768_5703
><td class="source"> ((int) (b1 + (b2-b1)*amt)));<br></td></tr
><tr
id=sl_svn7768_5704
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5705
><td class="source"> } else if (mode == HSB) {<br></td></tr
><tr
id=sl_svn7768_5706
><td class="source"> if (lerpColorHSB1 == null) {<br></td></tr
><tr
id=sl_svn7768_5707
><td class="source"> lerpColorHSB1 = new float[3];<br></td></tr
><tr
id=sl_svn7768_5708
><td class="source"> lerpColorHSB2 = new float[3];<br></td></tr
><tr
id=sl_svn7768_5709
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5710
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5711
><td class="source"> float a1 = (c1 &gt;&gt; 24) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5712
><td class="source"> float a2 = (c2 &gt;&gt; 24) &amp; 0xff;<br></td></tr
><tr
id=sl_svn7768_5713
><td class="source"> int alfa = ((int) (a1 + (a2-a1)*amt)) &lt;&lt; 24;<br></td></tr
><tr
id=sl_svn7768_5714
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5715
><td class="source"> Color.RGBtoHSB((c1 &gt;&gt; 16) &amp; 0xff, (c1 &gt;&gt; 8) &amp; 0xff, c1 &amp; 0xff,<br></td></tr
><tr
id=sl_svn7768_5716
><td class="source"> lerpColorHSB1);<br></td></tr
><tr
id=sl_svn7768_5717
><td class="source"> Color.RGBtoHSB((c2 &gt;&gt; 16) &amp; 0xff, (c2 &gt;&gt; 8) &amp; 0xff, c2 &amp; 0xff,<br></td></tr
><tr
id=sl_svn7768_5718
><td class="source"> lerpColorHSB2);<br></td></tr
><tr
id=sl_svn7768_5719
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5720
><td class="source"> /* If mode is HSB, this will take the shortest path around the<br></td></tr
><tr
id=sl_svn7768_5721
><td class="source"> * color wheel to find the new color. For instance, red to blue<br></td></tr
><tr
id=sl_svn7768_5722
><td class="source"> * will go red violet blue (backwards in hue space) rather than<br></td></tr
><tr
id=sl_svn7768_5723
><td class="source"> * cycling through ROYGBIV.<br></td></tr
><tr
id=sl_svn7768_5724
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5725
><td class="source"> // Disabling rollover (wasn&#39;t working anyway) for 0126.<br></td></tr
><tr
id=sl_svn7768_5726
><td class="source"> // Otherwise it makes full spectrum scale impossible for<br></td></tr
><tr
id=sl_svn7768_5727
><td class="source"> // those who might want it...in spite of how despicable<br></td></tr
><tr
id=sl_svn7768_5728
><td class="source"> // a full spectrum scale might be.<br></td></tr
><tr
id=sl_svn7768_5729
><td class="source"> // roll around when 0.9 to 0.1<br></td></tr
><tr
id=sl_svn7768_5730
><td class="source"> // more than 0.5 away means that it should roll in the other direction<br></td></tr
><tr
id=sl_svn7768_5731
><td class="source"> /*<br></td></tr
><tr
id=sl_svn7768_5732
><td class="source"> float h1 = lerpColorHSB1[0];<br></td></tr
><tr
id=sl_svn7768_5733
><td class="source"> float h2 = lerpColorHSB2[0];<br></td></tr
><tr
id=sl_svn7768_5734
><td class="source"> if (Math.abs(h1 - h2) &gt; 0.5f) {<br></td></tr
><tr
id=sl_svn7768_5735
><td class="source"> if (h1 &gt; h2) {<br></td></tr
><tr
id=sl_svn7768_5736
><td class="source"> // i.e. h1 is 0.7, h2 is 0.1<br></td></tr
><tr
id=sl_svn7768_5737
><td class="source"> h2 += 1;<br></td></tr
><tr
id=sl_svn7768_5738
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5739
><td class="source"> // i.e. h1 is 0.1, h2 is 0.7<br></td></tr
><tr
id=sl_svn7768_5740
><td class="source"> h1 += 1;<br></td></tr
><tr
id=sl_svn7768_5741
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5742
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5743
><td class="source"> float ho = (PApplet.lerp(lerpColorHSB1[0], lerpColorHSB2[0], amt)) % 1.0f;<br></td></tr
><tr
id=sl_svn7768_5744
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5745
><td class="source"> float ho = PApplet.lerp(lerpColorHSB1[0], lerpColorHSB2[0], amt);<br></td></tr
><tr
id=sl_svn7768_5746
><td class="source"> float so = PApplet.lerp(lerpColorHSB1[1], lerpColorHSB2[1], amt);<br></td></tr
><tr
id=sl_svn7768_5747
><td class="source"> float bo = PApplet.lerp(lerpColorHSB1[2], lerpColorHSB2[2], amt);<br></td></tr
><tr
id=sl_svn7768_5748
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5749
><td class="source"> return alfa | (Color.HSBtoRGB(ho, so, bo) &amp; 0xFFFFFF);<br></td></tr
><tr
id=sl_svn7768_5750
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5751
><td class="source"> return 0;<br></td></tr
><tr
id=sl_svn7768_5752
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5753
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5754
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5755
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5756
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5757
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5758
><td class="source"> // BEGINRAW/ENDRAW<br></td></tr
><tr
id=sl_svn7768_5759
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5760
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5761
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5762
><td class="source"> * Record individual lines and triangles by echoing them to another renderer.<br></td></tr
><tr
id=sl_svn7768_5763
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5764
><td class="source"> public void beginRaw(PGraphics rawGraphics) { // ignore<br></td></tr
><tr
id=sl_svn7768_5765
><td class="source"> this.raw = rawGraphics;<br></td></tr
><tr
id=sl_svn7768_5766
><td class="source"> rawGraphics.beginDraw();<br></td></tr
><tr
id=sl_svn7768_5767
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5768
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5769
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5770
><td class="source"> public void endRaw() { // ignore<br></td></tr
><tr
id=sl_svn7768_5771
><td class="source"> if (raw != null) {<br></td></tr
><tr
id=sl_svn7768_5772
><td class="source"> // for 3D, need to flush any geometry that&#39;s been stored for sorting<br></td></tr
><tr
id=sl_svn7768_5773
><td class="source"> // (particularly if the ENABLE_DEPTH_SORT hint is set)<br></td></tr
><tr
id=sl_svn7768_5774
><td class="source"> flush();<br></td></tr
><tr
id=sl_svn7768_5775
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5776
><td class="source"> // just like beginDraw, this will have to be called because<br></td></tr
><tr
id=sl_svn7768_5777
><td class="source"> // endDraw() will be happening outside of draw()<br></td></tr
><tr
id=sl_svn7768_5778
><td class="source"> raw.endDraw();<br></td></tr
><tr
id=sl_svn7768_5779
><td class="source"> raw.dispose();<br></td></tr
><tr
id=sl_svn7768_5780
><td class="source"> raw = null;<br></td></tr
><tr
id=sl_svn7768_5781
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5782
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5783
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5784
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5785
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5786
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5787
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5788
><td class="source"> // WARNINGS and EXCEPTIONS<br></td></tr
><tr
id=sl_svn7768_5789
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5790
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5791
><td class="source"> static protected HashMap&lt;String, Object&gt; warnings;<br></td></tr
><tr
id=sl_svn7768_5792
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5793
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5794
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5795
><td class="source"> * Show a renderer error, and keep track of it so that it&#39;s only shown once.<br></td></tr
><tr
id=sl_svn7768_5796
><td class="source"> * @param msg the error message (which will be stored for later comparison)<br></td></tr
><tr
id=sl_svn7768_5797
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5798
><td class="source"> static public void showWarning(String msg) { // ignore<br></td></tr
><tr
id=sl_svn7768_5799
><td class="source"> if (warnings == null) {<br></td></tr
><tr
id=sl_svn7768_5800
><td class="source"> warnings = new HashMap&lt;String, Object&gt;();<br></td></tr
><tr
id=sl_svn7768_5801
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5802
><td class="source"> if (!warnings.containsKey(msg)) {<br></td></tr
><tr
id=sl_svn7768_5803
><td class="source"> System.err.println(msg);<br></td></tr
><tr
id=sl_svn7768_5804
><td class="source"> warnings.put(msg, new Object());<br></td></tr
><tr
id=sl_svn7768_5805
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5806
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5807
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5808
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5809
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5810
><td class="source"> * Display a warning that the specified method is only available with 3D.<br></td></tr
><tr
id=sl_svn7768_5811
><td class="source"> * @param method The method name (no parentheses)<br></td></tr
><tr
id=sl_svn7768_5812
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5813
><td class="source"> static public void showDepthWarning(String method) {<br></td></tr
><tr
id=sl_svn7768_5814
><td class="source"> showWarning(method + &quot;() can only be used with a renderer that &quot; +<br></td></tr
><tr
id=sl_svn7768_5815
><td class="source"> &quot;supports 3D, such as P3D or OPENGL.&quot;);<br></td></tr
><tr
id=sl_svn7768_5816
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5817
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5818
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5819
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5820
><td class="source"> * Display a warning that the specified method that takes x, y, z parameters<br></td></tr
><tr
id=sl_svn7768_5821
><td class="source"> * can only be used with x and y parameters in this renderer.<br></td></tr
><tr
id=sl_svn7768_5822
><td class="source"> * @param method The method name (no parentheses)<br></td></tr
><tr
id=sl_svn7768_5823
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5824
><td class="source"> static public void showDepthWarningXYZ(String method) {<br></td></tr
><tr
id=sl_svn7768_5825
><td class="source"> showWarning(method + &quot;() with x, y, and z coordinates &quot; +<br></td></tr
><tr
id=sl_svn7768_5826
><td class="source"> &quot;can only be used with a renderer that &quot; +<br></td></tr
><tr
id=sl_svn7768_5827
><td class="source"> &quot;supports 3D, such as P3D or OPENGL. &quot; +<br></td></tr
><tr
id=sl_svn7768_5828
><td class="source"> &quot;Use a version without a z-coordinate instead.&quot;);<br></td></tr
><tr
id=sl_svn7768_5829
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5830
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5831
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5832
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5833
><td class="source"> * Display a warning that the specified method is simply unavailable.<br></td></tr
><tr
id=sl_svn7768_5834
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5835
><td class="source"> static public void showMethodWarning(String method) {<br></td></tr
><tr
id=sl_svn7768_5836
><td class="source"> showWarning(method + &quot;() is not available with this renderer.&quot;);<br></td></tr
><tr
id=sl_svn7768_5837
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5838
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5839
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5840
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5841
><td class="source"> * Error that a particular variation of a method is unavailable (even though<br></td></tr
><tr
id=sl_svn7768_5842
><td class="source"> * other variations are). For instance, if vertex(x, y, u, v) is not<br></td></tr
><tr
id=sl_svn7768_5843
><td class="source"> * available, but vertex(x, y) is just fine.<br></td></tr
><tr
id=sl_svn7768_5844
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5845
><td class="source"> static public void showVariationWarning(String str) {<br></td></tr
><tr
id=sl_svn7768_5846
><td class="source"> showWarning(str + &quot; is not available with this renderer.&quot;);<br></td></tr
><tr
id=sl_svn7768_5847
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5848
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5849
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5850
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5851
><td class="source"> * Display a warning that the specified method is not implemented, meaning<br></td></tr
><tr
id=sl_svn7768_5852
><td class="source"> * that it could be either a completely missing function, although other<br></td></tr
><tr
id=sl_svn7768_5853
><td class="source"> * variations of it may still work properly.<br></td></tr
><tr
id=sl_svn7768_5854
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5855
><td class="source"> static public void showMissingWarning(String method) {<br></td></tr
><tr
id=sl_svn7768_5856
><td class="source"> showWarning(method + &quot;(), or this particular variation of it, &quot; +<br></td></tr
><tr
id=sl_svn7768_5857
><td class="source"> &quot;is not available with this renderer.&quot;);<br></td></tr
><tr
id=sl_svn7768_5858
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5859
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5860
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5861
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5862
><td class="source"> * Show an renderer-related exception that halts the program. Currently just<br></td></tr
><tr
id=sl_svn7768_5863
><td class="source"> * wraps the message as a RuntimeException and throws it, but might do<br></td></tr
><tr
id=sl_svn7768_5864
><td class="source"> * something more specific might be used in the future.<br></td></tr
><tr
id=sl_svn7768_5865
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5866
><td class="source"> static public void showException(String msg) { // ignore<br></td></tr
><tr
id=sl_svn7768_5867
><td class="source"> throw new RuntimeException(msg);<br></td></tr
><tr
id=sl_svn7768_5868
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5869
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5870
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5871
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5872
><td class="source"> * Same as below, but defaults to a 12 point font, just as MacWrite intended.<br></td></tr
><tr
id=sl_svn7768_5873
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5874
><td class="source"> protected void defaultFontOrDeath(String method) {<br></td></tr
><tr
id=sl_svn7768_5875
><td class="source"> defaultFontOrDeath(method, 12);<br></td></tr
><tr
id=sl_svn7768_5876
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5877
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5878
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5879
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5880
><td class="source"> * First try to create a default font, but if that&#39;s not possible, throw <br></td></tr
><tr
id=sl_svn7768_5881
><td class="source"> * an exception that halts the program because textFont() has not been used <br></td></tr
><tr
id=sl_svn7768_5882
><td class="source"> * prior to the specified method.<br></td></tr
><tr
id=sl_svn7768_5883
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5884
><td class="source"> protected void defaultFontOrDeath(String method, float size) {<br></td></tr
><tr
id=sl_svn7768_5885
><td class="source"> if (parent != null) {<br></td></tr
><tr
id=sl_svn7768_5886
><td class="source"> textFont = parent.createDefaultFont(size);<br></td></tr
><tr
id=sl_svn7768_5887
><td class="source"> } else {<br></td></tr
><tr
id=sl_svn7768_5888
><td class="source"> throw new RuntimeException(&quot;Use textFont() before &quot; + method + &quot;()&quot;);<br></td></tr
><tr
id=sl_svn7768_5889
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5890
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5891
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5892
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5893
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5894
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5895
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5896
><td class="source"> // RENDERER SUPPORT QUERIES<br></td></tr
><tr
id=sl_svn7768_5897
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5898
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5899
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5900
><td class="source"> * Return true if this renderer should be drawn to the screen. Defaults to<br></td></tr
><tr
id=sl_svn7768_5901
><td class="source"> * returning true, since nearly all renderers are on-screen beasts. But can<br></td></tr
><tr
id=sl_svn7768_5902
><td class="source"> * be overridden for subclasses like PDF so that a window doesn&#39;t open up.<br></td></tr
><tr
id=sl_svn7768_5903
><td class="source"> * &lt;br/&gt; &lt;br/&gt;<br></td></tr
><tr
id=sl_svn7768_5904
><td class="source"> * A better name? showFrame, displayable, isVisible, visible, shouldDisplay,<br></td></tr
><tr
id=sl_svn7768_5905
><td class="source"> * what to call this?<br></td></tr
><tr
id=sl_svn7768_5906
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5907
><td class="source"> public boolean displayable() {<br></td></tr
><tr
id=sl_svn7768_5908
><td class="source"> return true;<br></td></tr
><tr
id=sl_svn7768_5909
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5910
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5911
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5912
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5913
><td class="source"> * Return true if this renderer supports 2D drawing. Defaults to true.<br></td></tr
><tr
id=sl_svn7768_5914
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5915
><td class="source"> public boolean is2D() {<br></td></tr
><tr
id=sl_svn7768_5916
><td class="source"> return true;<br></td></tr
><tr
id=sl_svn7768_5917
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5918
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5919
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5920
><td class="source"> /**<br></td></tr
><tr
id=sl_svn7768_5921
><td class="source"> * Return true if this renderer supports 3D drawing. Defaults to false.<br></td></tr
><tr
id=sl_svn7768_5922
><td class="source"> */<br></td></tr
><tr
id=sl_svn7768_5923
><td class="source"> public boolean is3D() {<br></td></tr
><tr
id=sl_svn7768_5924
><td class="source"> return false;<br></td></tr
><tr
id=sl_svn7768_5925
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5926
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5927
><td class="source"> //////////////////////////////////////////////////////////////<br></td></tr
><tr
id=sl_svn7768_5928
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5929
><td class="source"> // New API:<br></td></tr
><tr
id=sl_svn7768_5930
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5931
><td class="source"> protected String[] getSupportedShapeFormats() {<br></td></tr
><tr
id=sl_svn7768_5932
><td class="source"> showMissingWarning(&quot;getSupportedShapeFormats&quot;);<br></td></tr
><tr
id=sl_svn7768_5933
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_5934
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5935
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5936
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5937
><td class="source"> protected PShape loadShape(String filename, Object params) {<br></td></tr
><tr
id=sl_svn7768_5938
><td class="source"> showMissingWarning(&quot;loadShape&quot;);<br></td></tr
><tr
id=sl_svn7768_5939
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_5940
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5941
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5942
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5943
><td class="source"> protected PShape createShape(int size, Object params) {<br></td></tr
><tr
id=sl_svn7768_5944
><td class="source"> showMissingWarning(&quot;createShape&quot;);<br></td></tr
><tr
id=sl_svn7768_5945
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_5946
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5947
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5948
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5949
><td class="source"> public void screenBlend(int mode) {<br></td></tr
><tr
id=sl_svn7768_5950
><td class="source"> showMissingWarning(&quot;screenBlend&quot;);<br></td></tr
><tr
id=sl_svn7768_5951
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5952
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5953
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5954
><td class="source"> public void textureBlend(int mode) {<br></td></tr
><tr
id=sl_svn7768_5955
><td class="source"> showMissingWarning(&quot;textureBlend&quot;);<br></td></tr
><tr
id=sl_svn7768_5956
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5957
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5958
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5959
><td class="source"> public PShape beginRecord() { // ignore<br></td></tr
><tr
id=sl_svn7768_5960
><td class="source"> showMissingWarning(&quot;beginRecord&quot;);<br></td></tr
><tr
id=sl_svn7768_5961
><td class="source"> return null;<br></td></tr
><tr
id=sl_svn7768_5962
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5963
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5964
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5965
><td class="source"> public void endRecord() { // ignore<br></td></tr
><tr
id=sl_svn7768_5966
><td class="source"> showMissingWarning(&quot;endRecord&quot;); <br></td></tr
><tr
id=sl_svn7768_5967
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5968
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5969
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5970
><td class="source"> public boolean isRecording() {<br></td></tr
><tr
id=sl_svn7768_5971
><td class="source"> showMissingWarning(&quot;isRecording&quot;); <br></td></tr
><tr
id=sl_svn7768_5972
><td class="source"> return false;<br></td></tr
><tr
id=sl_svn7768_5973
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5974
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5975
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5976
><td class="source"> public void mergeShapes(boolean val) { <br></td></tr
><tr
id=sl_svn7768_5977
><td class="source"> showMissingWarning(&quot;mergeShapes&quot;); <br></td></tr
><tr
id=sl_svn7768_5978
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5979
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5980
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5981
><td class="source"> public void shapeName(String name) {<br></td></tr
><tr
id=sl_svn7768_5982
><td class="source"> showMissingWarning(&quot;shapeName&quot;); <br></td></tr
><tr
id=sl_svn7768_5983
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5984
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5985
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5986
><td class="source"> public void autoNormal(boolean auto) {<br></td></tr
><tr
id=sl_svn7768_5987
><td class="source"> this.autoNormal = auto; <br></td></tr
><tr
id=sl_svn7768_5988
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5989
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5990
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5991
><td class="source"> public void matrixMode(int mode) {<br></td></tr
><tr
id=sl_svn7768_5992
><td class="source"> showMissingWarning(&quot;matrixMode&quot;); <br></td></tr
><tr
id=sl_svn7768_5993
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5994
><td class="source"><br></td></tr
><tr
id=sl_svn7768_5995
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_5996
><td class="source"> public void beginText() {<br></td></tr
><tr
id=sl_svn7768_5997
><td class="source"> showMissingWarning(&quot;beginText&quot;);<br></td></tr
><tr
id=sl_svn7768_5998
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_5999
><td class="source"><br></td></tr
><tr
id=sl_svn7768_6000
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_6001
><td class="source"> public void endText() {<br></td></tr
><tr
id=sl_svn7768_6002
><td class="source"> showMissingWarning(&quot;endText&quot;);<br></td></tr
><tr
id=sl_svn7768_6003
><td class="source"> } <br></td></tr
><tr
id=sl_svn7768_6004
><td class="source"><br></td></tr
><tr
id=sl_svn7768_6005
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_6006
><td class="source"> public void texture(PImage... images) {<br></td></tr
><tr
id=sl_svn7768_6007
><td class="source"> showMissingWarning(&quot;texture&quot;); <br></td></tr
><tr
id=sl_svn7768_6008
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_6009
><td class="source"><br></td></tr
><tr
id=sl_svn7768_6010
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_6011
><td class="source"> public void vertex(float x, float y, float... uv) {<br></td></tr
><tr
id=sl_svn7768_6012
><td class="source"> showMissingWarning(&quot;vertex&quot;); <br></td></tr
><tr
id=sl_svn7768_6013
><td class="source"> }<br></td></tr
><tr
id=sl_svn7768_6014
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_6015
><td class="source"> <br></td></tr
><tr
id=sl_svn7768_6016
><td class="source"> public void vertex(float x, float y, float z, float... uv) {<br></td></tr
><tr
id=sl_svn7768_6017
><td class="source"> showMissingWarning(&quot;vertex&quot;); <br></td></tr
><tr
id=sl_svn7768_6018
><td class="source"> } <br></td></tr
><tr
id=sl_svn7768_6019
><td class="source">}<br></td></tr
></table></pre>
<pre class="prettyprint"><table width="100%"><tr class="cursor_stop cursor_hidden"><td></td></tr></table></pre>
</td>
</tr></table>
<script type="text/javascript">
var lineNumUnderMouse = -1;
function gutterOver(num) {
gutterOut();
var newTR = document.getElementById('gr_svn7768_' + num);
if (newTR) {
newTR.className = 'undermouse';
}
lineNumUnderMouse = num;
}
function gutterOut() {
if (lineNumUnderMouse != -1) {
var oldTR = document.getElementById(
'gr_svn7768_' + lineNumUnderMouse);
if (oldTR) {
oldTR.className = '';
}
lineNumUnderMouse = -1;
}
}
var numsGenState = {table_base_id: 'nums_table_'};
var srcGenState = {table_base_id: 'src_table_'};
var alignerRunning = false;
var startOver = false;
function setLineNumberHeights() {
if (alignerRunning) {
startOver = true;
return;
}
numsGenState.chunk_id = 0;
numsGenState.table = document.getElementById('nums_table_0');
numsGenState.row_num = 0;
srcGenState.chunk_id = 0;
srcGenState.table = document.getElementById('src_table_0');
srcGenState.row_num = 0;
alignerRunning = true;
continueToSetLineNumberHeights();
}
function rowGenerator(genState) {
if (genState.row_num < genState.table.rows.length) {
var currentRow = genState.table.rows[genState.row_num];
genState.row_num++;
return currentRow;
}
var newTable = document.getElementById(
genState.table_base_id + (genState.chunk_id + 1));
if (newTable) {
genState.chunk_id++;
genState.row_num = 0;
genState.table = newTable;
return genState.table.rows[0];
}
return null;
}
var MAX_ROWS_PER_PASS = 1000;
function continueToSetLineNumberHeights() {
var rowsInThisPass = 0;
var numRow = 1;
var srcRow = 1;
while (numRow && srcRow && rowsInThisPass < MAX_ROWS_PER_PASS) {
numRow = rowGenerator(numsGenState);
srcRow = rowGenerator(srcGenState);
rowsInThisPass++;
if (numRow && srcRow) {
if (numRow.offsetHeight != srcRow.offsetHeight) {
numRow.firstChild.style.height = srcRow.offsetHeight + 'px';
}
}
}
if (rowsInThisPass >= MAX_ROWS_PER_PASS) {
setTimeout(continueToSetLineNumberHeights, 10);
} else {
alignerRunning = false;
if (startOver) {
startOver = false;
setTimeout(setLineNumberHeights, 500);
}
}
}
// Do 2 complete passes, because there can be races
// between this code and prettify.
startOver = true;
setTimeout(setLineNumberHeights, 250);
window.onresize = setLineNumberHeights;
</script>
<div id="log">
<div style="text-align:right">
<a class="ifCollapse" href="#" onclick="_toggleMeta('', 'p', 'processing', this)">Show details</a>
<a class="ifExpand" href="#" onclick="_toggleMeta('', 'p', 'processing', this)">Hide details</a>
</div>
<div class="ifExpand">
<div class="pmeta_bubble_bg" style="border:1px solid white">
<div class="round4"></div>
<div class="round2"></div>
<div class="round1"></div>
<div class="box-inner">
<div id="changelog">
<p>Change log</p>
<div>
<a href="/p/processing/source/detail?spec=svn7768&r=7761">r7761</a>
by andres.colubri
on Yesterday (21 hours ago)
&nbsp; <a href="/p/processing/source/diff?spec=svn7768&r=7761&amp;format=side&amp;path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old_path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old=7750">Diff</a>
</div>
<pre>Fixed showMissingWarning() messages in
Processing core</pre>
</div>
<script type="text/javascript">
var detail_url = '/p/processing/source/detail?r=7761&spec=svn7768';
var publish_url = '/p/processing/source/detail?r=7761&spec=svn7768#publish';
// describe the paths of this revision in javascript.
var changed_paths = [];
var changed_urls = [];
changed_paths.push('/trunk/processing/core/src/processing/core/PGraphics.java');
changed_urls.push('/p/processing/source/browse/trunk/processing/core/src/processing/core/PGraphics.java?r\x3d7761\x26spec\x3dsvn7768');
var selected_path = '/trunk/processing/core/src/processing/core/PGraphics.java';
function getCurrentPageIndex() {
for (var i = 0; i < changed_paths.length; i++) {
if (selected_path == changed_paths[i]) {
return i;
}
}
}
function getNextPage() {
var i = getCurrentPageIndex();
if (i < changed_paths.length - 1) {
return changed_urls[i + 1];
}
return null;
}
function getPreviousPage() {
var i = getCurrentPageIndex();
if (i > 0) {
return changed_urls[i - 1];
}
return null;
}
function gotoNextPage() {
var page = getNextPage();
if (!page) {
page = detail_url;
}
window.location = page;
}
function gotoPreviousPage() {
var page = getPreviousPage();
if (!page) {
page = detail_url;
}
window.location = page;
}
function gotoDetailPage() {
window.location = detail_url;
}
function gotoPublishPage() {
window.location = publish_url;
}
</script>
<style type="text/css">
#review_nav {
border-top: 3px solid white;
padding-top: 6px;
margin-top: 1em;
}
#review_nav td {
vertical-align: middle;
}
#review_nav select {
margin: .5em 0;
}
</style>
<div id="review_nav">
<table><tr><td>Go to:&nbsp;</td><td>
<select name="files_in_rev" onchange="window.location=this.value">
<option value="/p/processing/source/browse/trunk/processing/core/src/processing/core/PGraphics.java?r=7761&amp;spec=svn7768"
selected="selected"
>...c/processing/core/PGraphics.java</option>
</select>
</td></tr></table>
</div>
</div>
<div class="round1"></div>
<div class="round2"></div>
<div class="round4"></div>
</div>
<div class="pmeta_bubble_bg" style="border:1px solid white">
<div class="round4"></div>
<div class="round2"></div>
<div class="round1"></div>
<div class="box-inner">
<div id="older_bubble">
<p>Older revisions</p>
<div class="closed" style="margin-bottom:3px;" >
<img class="ifClosed" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/plus.gif" >
<img class="ifOpened" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/minus.gif" >
<a href="/p/processing/source/detail?spec=svn7768&r=7750">r7750</a>
by f...@processing.org
on Yesterday (24 hours ago)
&nbsp; <a href="/p/processing/source/diff?spec=svn7768&r=7750&amp;format=side&amp;path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old_path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old=7716">Diff</a>
<br>
<pre class="ifOpened">clean up the last of the font/pdf
fixes</pre>
</div>
<div class="closed" style="margin-bottom:3px;" >
<img class="ifClosed" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/plus.gif" >
<img class="ifOpened" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/minus.gif" >
<a href="/p/processing/source/detail?spec=svn7768&r=7716">r7716</a>
by andres.colubri
on Feb 27, 2011
&nbsp; <a href="/p/processing/source/diff?spec=svn7768&r=7716&amp;format=side&amp;path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old_path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old=7707">Diff</a>
<br>
<pre class="ifOpened">Added ortho(legt, right, top, bottom)
function. It uses cameraNear,
cameraFar as the near, far values</pre>
</div>
<div class="closed" style="margin-bottom:3px;" >
<img class="ifClosed" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/plus.gif" >
<img class="ifOpened" onclick="_toggleHidden(this)" src="http://www.gstatic.com/codesite/ph/images/minus.gif" >
<a href="/p/processing/source/detail?spec=svn7768&r=7707">r7707</a>
by andres.colubri
on Feb 22, 2011
&nbsp; <a href="/p/processing/source/diff?spec=svn7768&r=7707&amp;format=side&amp;path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old_path=/trunk/processing/core/src/processing/core/PGraphics.java&amp;old=7695">Diff</a>
<br>
<pre class="ifOpened">Multitexture API uses varargs</pre>
</div>
<a href="/p/processing/source/list?path=/trunk/processing/core/src/processing/core/PGraphics.java&start=7761">All revisions of this file</a>
</div>
</div>
<div class="round1"></div>
<div class="round2"></div>
<div class="round4"></div>
</div>
<div class="pmeta_bubble_bg" style="border:1px solid white">
<div class="round4"></div>
<div class="round2"></div>
<div class="round1"></div>
<div class="box-inner">
<div id="fileinfo_bubble">
<p>File info</p>
<div>Size: 182977 bytes,
6019 lines</div>
<div><a href="http://processing.googlecode.com/svn/trunk/processing/core/src/processing/core/PGraphics.java">View raw file</a></div>
</div>
</div>
<div class="round1"></div>
<div class="round2"></div>
<div class="round4"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="http://www.gstatic.com/codesite/ph/10276742928614796628/js/source_file_scripts.js"></script>
<script type="text/javascript" src="https://kibbles.googlecode.com/files/kibbles-1.3.3.comp.js"></script>
<script type="text/javascript">
var lastStop = null;
var initilized = false;
function updateCursor(next, prev) {
if (prev && prev.element) {
prev.element.className = 'cursor_stop cursor_hidden';
}
if (next && next.element) {
next.element.className = 'cursor_stop cursor';
lastStop = next.index;
}
}
function pubRevealed(data) {
updateCursorForCell(data.cellId, 'cursor_stop cursor_hidden');
if (initilized) {
reloadCursors();
}
}
function draftRevealed(data) {
updateCursorForCell(data.cellId, 'cursor_stop cursor_hidden');
if (initilized) {
reloadCursors();
}
}
function draftDestroyed(data) {
updateCursorForCell(data.cellId, 'nocursor');
if (initilized) {
reloadCursors();
}
}
function reloadCursors() {
kibbles.skipper.reset();
loadCursors();
if (lastStop != null) {
kibbles.skipper.setCurrentStop(lastStop);
}
}
// possibly the simplest way to insert any newly added comments
// is to update the class of the corresponding cursor row,
// then refresh the entire list of rows.
function updateCursorForCell(cellId, className) {
var cell = document.getElementById(cellId);
// we have to go two rows back to find the cursor location
var row = getPreviousElement(cell.parentNode);
row.className = className;
}
// returns the previous element, ignores text nodes.
function getPreviousElement(e) {
var element = e.previousSibling;
if (element.nodeType == 3) {
element = element.previousSibling;
}
if (element && element.tagName) {
return element;
}
}
function loadCursors() {
// register our elements with skipper
var elements = CR_getElements('*', 'cursor_stop');
var len = elements.length;
for (var i = 0; i < len; i++) {
var element = elements[i];
element.className = 'cursor_stop cursor_hidden';
kibbles.skipper.append(element);
}
}
function toggleComments() {
CR_toggleCommentDisplay();
reloadCursors();
}
function keysOnLoadHandler() {
// setup skipper
kibbles.skipper.addStopListener(
kibbles.skipper.LISTENER_TYPE.PRE, updateCursor);
// Set the 'offset' option to return the middle of the client area
// an option can be a static value, or a callback
kibbles.skipper.setOption('padding_top', 50);
// Set the 'offset' option to return the middle of the client area
// an option can be a static value, or a callback
kibbles.skipper.setOption('padding_bottom', 100);
// Register our keys
kibbles.skipper.addFwdKey("n");
kibbles.skipper.addRevKey("p");
kibbles.keys.addKeyPressListener(
'u', function() { window.location = detail_url; });
kibbles.keys.addKeyPressListener(
'r', function() { window.location = detail_url + '#publish'; });
kibbles.keys.addKeyPressListener('j', gotoNextPage);
kibbles.keys.addKeyPressListener('k', gotoPreviousPage);
}
</script>
<script src="http://www.gstatic.com/codesite/ph/10276742928614796628/js/code_review_scripts.js"></script>
<script type="text/javascript">
// the comment form template
var form = '<div class="draft"><div class="header"><span class="title">Draft comment:</span></div>' +
'<div class="body"><form onsubmit="return false;"><textarea id="$ID">$BODY</textarea><br>$ACTIONS</form></div>' +
'</div>';
// the comment "plate" template used for both draft and published comment "plates".
var draft_comment = '<div class="draft" ondblclick="$ONDBLCLICK">' +
'<div class="header"><span class="title">Draft comment:</span><span class="actions">$ACTIONS</span></div>' +
'<pre id="$ID" class="body">$BODY</pre>' +
'</div>';
var published_comment = '<div class="published">' +
'<div class="header"><span class="title"><a href="$PROFILE_URL">$AUTHOR:</a></span><div>' +
'<pre id="$ID" class="body">$BODY</pre>' +
'</div>';
function showPublishInstructions() {
var element = document.getElementById('review_instr');
if (element) {
element.className = 'opened';
}
}
function revsOnLoadHandler() {
// register our source container with the commenting code
var paths = {'svn7768': '/trunk/processing/core/src/processing/core/PGraphics.java'}
CR_setup('', 'p', 'processing', '', 'svn7768', paths,
'c6974bcd72eb95455827185f7306e1fa', CR_BrowseIntegrationFactory);
// register our hidden ui elements with the code commenting code ui builder.
CR_registerLayoutElement('form', form);
CR_registerLayoutElement('draft_comment', draft_comment);
CR_registerLayoutElement('published_comment', published_comment);
CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_DRAFT_PLATE, showPublishInstructions);
CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_PUB_PLATE, pubRevealed);
CR_registerActivityListener(CR_ACTIVITY_TYPE.REVEAL_DRAFT_PLATE, draftRevealed);
CR_registerActivityListener(CR_ACTIVITY_TYPE.DISCARD_DRAFT_COMMENT, draftDestroyed);
var initilized = true;
reloadCursors();
}
window.onload = function() {keysOnLoadHandler(); revsOnLoadHandler();};
</script>
<script type="text/javascript" src="http://www.gstatic.com/codesite/ph/10276742928614796628/js/dit_scripts.js"></script>
<script type="text/javascript" src="http://www.gstatic.com/codesite/ph/10276742928614796628/js/core_scripts_20081103.js"></script>
<script type="text/javascript" src="/js/codesite_product_dictionary_ph.pack.04102009.js"></script>
</div>
<div id="footer" dir="ltr">
<div class="text">
&copy;2010 Google -
<a href="/projecthosting/terms.html">Terms</a> -
<a href="http://www.google.com/privacy.html">Privacy</a> -
<a href="/p/support/">Project Hosting Help</a>
</div>
</div>
<div class="hostedBy" style="margin-top: -20px;">
<span style="vertical-align: top;">Powered by <a href="http://code.google.com/projecthosting/">Google Project Hosting</a></span>
</div>
<script type="text/javascript">_CS_reportToCsi();</script>
</body>
</html>