Files
opennurbs/6/d5/db3/class_o_n___decode_base64.html
Bozo 013efd06c9 Publish!
Generated from v6.0.11315.11111-test11
2018-01-31 14:30:40 -08:00

397 lines
21 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>openNURBS SDK Help: ON_DecodeBase64 Class Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../search/searchdata.js"></script>
<script type="text/javascript" src="../../search/search.js"></script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">openNURBS SDK Help
&#160;<span id="projectnumber">6.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="../../d7/de7/class_o_n___decode_base64-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ON_DecodeBase64 Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="../../d3/dce/opennurbs__base64_8h_source.html">opennurbs_base64.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a713fb502ad573a76f4cab96abbda6783"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a713fb502ad573a76f4cab96abbda6783">ON_DecodeBase64</a> ()</td></tr>
<tr class="separator:a713fb502ad573a76f4cab96abbda6783"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13ee6cfb7d408c536896d48c125d5a17"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a13ee6cfb7d408c536896d48c125d5a17">~ON_DecodeBase64</a> ()</td></tr>
<tr class="separator:a13ee6cfb7d408c536896d48c125d5a17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e61e892e09e5be7ec417307f1125e1e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a7e61e892e09e5be7ec417307f1125e1e">Begin</a> ()</td></tr>
<tr class="separator:a7e61e892e09e5be7ec417307f1125e1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e3e2d2f2962cbb0e6558ba4cc8fb73f"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode</a> (const char *base64str)</td></tr>
<tr class="separator:a0e3e2d2f2962cbb0e6558ba4cc8fb73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c0cfaa3244ba025883d2292bde3c6ef"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a9c0cfaa3244ba025883d2292bde3c6ef">Decode</a> (const char *base64str, size_t base64str_count)</td></tr>
<tr class="separator:a9c0cfaa3244ba025883d2292bde3c6ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2638bd7e9f9ad0faf8c581e01d133e36"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a2638bd7e9f9ad0faf8c581e01d133e36">Decode</a> (const wchar_t *base64str)</td></tr>
<tr class="separator:a2638bd7e9f9ad0faf8c581e01d133e36"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae94dd4cb9f6254d89f29da8e91c25233"><td class="memItemLeft" align="right" valign="top">const wchar_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae94dd4cb9f6254d89f29da8e91c25233">Decode</a> (const wchar_t *base64str, size_t base64str_count)</td></tr>
<tr class="separator:ae94dd4cb9f6254d89f29da8e91c25233"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae38f2157ea6ca374fc49e863d80078ad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End</a> ()</td></tr>
<tr class="separator:ae38f2157ea6ca374fc49e863d80078ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72da83c695ca7f5f831ee1d965d373e4"><td class="memItemLeft" align="right" valign="top">const bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a72da83c695ca7f5f831ee1d965d373e4">Error</a> () const</td></tr>
<tr class="separator:a72da83c695ca7f5f831ee1d965d373e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc9e416c6a20cd04d4f8b95213e85ac9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output</a> ()</td></tr>
<tr class="separator:adc9e416c6a20cd04d4f8b95213e85ac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5a4af4e9d9591882f7bf08ec50ee613"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ad5a4af4e9d9591882f7bf08ec50ee613">SetError</a> ()</td></tr>
<tr class="separator:ad5a4af4e9d9591882f7bf08ec50ee613"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ac0fc71e4034240f5190e26a998ad2f0b"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ac0fc71e4034240f5190e26a998ad2f0b">m_decode_count</a></td></tr>
<tr class="separator:ac0fc71e4034240f5190e26a998ad2f0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90ca346028a45ef87add7871b871a97e"><td class="memItemLeft" align="right" valign="top">unsigned char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a90ca346028a45ef87add7871b871a97e">m_output</a> [512]</td></tr>
<tr class="separator:a90ca346028a45ef87add7871b871a97e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d524fe2fd44ec635ba538972e7efc5e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a7d524fe2fd44ec635ba538972e7efc5e">m_output_count</a></td></tr>
<tr class="memdesc:a7d524fe2fd44ec635ba538972e7efc5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">0 to 512 <a href="#a7d524fe2fd44ec635ba538972e7efc5e">More...</a><br /></td></tr>
<tr class="separator:a7d524fe2fd44ec635ba538972e7efc5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a713fb502ad573a76f4cab96abbda6783"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a713fb502ad573a76f4cab96abbda6783">&#9670;&nbsp;</a></span>ON_DecodeBase64()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">ON_DecodeBase64::ON_DecodeBase64 </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a13ee6cfb7d408c536896d48c125d5a17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13ee6cfb7d408c536896d48c125d5a17">&#9670;&nbsp;</a></span>~ON_DecodeBase64()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual ON_DecodeBase64::~ON_DecodeBase64 </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a7e61e892e09e5be7ec417307f1125e1e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e61e892e09e5be7ec417307f1125e1e">&#9670;&nbsp;</a></span>Begin()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_DecodeBase64::Begin </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a0e3e2d2f2962cbb0e6558ba4cc8fb73f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">&#9670;&nbsp;</a></span>Decode() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* ON_DecodeBase64::Decode </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>base64str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decode will generate zero or more callbacks to the virtual <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a> function. If the base 64 encoded information is in pieces, you can call <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> for each piece. For example, if your encoded information is in a text file, you might call <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> for every line in the file. <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> returns 0 if there is nothing in base64str to decode or if it detects an error that prevents any further decoding. The function <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a72da83c695ca7f5f831ee1d965d373e4">Error()</a> can be used to determine if an error occured. Otherwise, <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> returns a pointer to the location in the string where it stopped decoding because it detected a character, like a null terminator, an end of line character, or any other character that could not be part of the base 64 encoded information. </p>
</div>
</div>
<a id="a9c0cfaa3244ba025883d2292bde3c6ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c0cfaa3244ba025883d2292bde3c6ef">&#9670;&nbsp;</a></span>Decode() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* ON_DecodeBase64::Decode </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>base64str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>base64str_count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a2638bd7e9f9ad0faf8c581e01d133e36"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2638bd7e9f9ad0faf8c581e01d133e36">&#9670;&nbsp;</a></span>Decode() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const wchar_t* ON_DecodeBase64::Decode </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base64str</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae94dd4cb9f6254d89f29da8e91c25233"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae94dd4cb9f6254d89f29da8e91c25233">&#9670;&nbsp;</a></span>Decode() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const wchar_t* ON_DecodeBase64::Decode </td>
<td>(</td>
<td class="paramtype">const wchar_t *&#160;</td>
<td class="paramname"><em>base64str</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>base64str_count</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae38f2157ea6ca374fc49e863d80078ad"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae38f2157ea6ca374fc49e863d80078ad">&#9670;&nbsp;</a></span>End()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool ON_DecodeBase64::End </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>You must call <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End()</a> when <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> returns 0 or when you have reached the end of your encoded information. <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End()</a> may callback to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a> zero or one time. If all the information passed to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> was successfully decoded, then <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End()</a> returns true. If something was not decoded, then <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End()</a> returns false. </p>
</div>
</div>
<a id="a72da83c695ca7f5f831ee1d965d373e4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72da83c695ca7f5f831ee1d965d373e4">&#9670;&nbsp;</a></span>Error()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const bool ON_DecodeBase64::Error </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns true if an error occured during decoding because invalid input was passed to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a>. </p>
</div>
</div>
<a id="adc9e416c6a20cd04d4f8b95213e85ac9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc9e416c6a20cd04d4f8b95213e85ac9">&#9670;&nbsp;</a></span>Output()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void ON_DecodeBase64::Output </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Override the virtual <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a> callback function to process the decoded output. Each time <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a> is called there are m_output_count bytes in the m_output[] array. Every call to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> can result in zero, one, or many callbacks to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a>. Calling <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#ae38f2157ea6ca374fc49e863d80078ad">End()</a> may result in zero or one callbacks to <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a>. </p>
</div>
</div>
<a id="ad5a4af4e9d9591882f7bf08ec50ee613"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5a4af4e9d9591882f7bf08ec50ee613">&#9670;&nbsp;</a></span>SetError()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void ON_DecodeBase64::SetError </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Call if your <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#adc9e416c6a20cd04d4f8b95213e85ac9">Output()</a> function detects an error and wants to stop further decoding. </p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="ac0fc71e4034240f5190e26a998ad2f0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0fc71e4034240f5190e26a998ad2f0b">&#9670;&nbsp;</a></span>m_decode_count</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned int ON_DecodeBase64::m_decode_count</td>
</tr>
</table>
</div><div class="memdoc">
<p>m_decode_count = total number of input base64 characters that <a class="el" href="../../d5/db3/class_o_n___decode_base64.html#a0e3e2d2f2962cbb0e6558ba4cc8fb73f">Decode()</a> has decoded. </p>
</div>
</div>
<a id="a90ca346028a45ef87add7871b871a97e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90ca346028a45ef87add7871b871a97e">&#9670;&nbsp;</a></span>m_output</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">unsigned char ON_DecodeBase64::m_output[512]</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7d524fe2fd44ec635ba538972e7efc5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d524fe2fd44ec635ba538972e7efc5e">&#9670;&nbsp;</a></span>m_output_count</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int ON_DecodeBase64::m_output_count</td>
</tr>
</table>
</div><div class="memdoc">
<p>0 to 512 </p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Jan 31 2018 14:30:13 for openNURBS SDK Help by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>