af4381d113faafc97340eaaa008840c7fcbcc8fdsf<?xml version="1.0" encoding="ISO-8859-1"?>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head>
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
fd9abdda70912b99b24e3bf1a38f26fde908a74cnd<!--
af4381d113faafc97340eaaa008840c7fcbcc8fdsf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af4381d113faafc97340eaaa008840c7fcbcc8fdsf This file is generated from xml source: DO NOT EDIT
af4381d113faafc97340eaaa008840c7fcbcc8fdsf XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
af4381d113faafc97340eaaa008840c7fcbcc8fdsf -->
96ad5d81ee4a2cc66a4ae19893efc8aa6d06fae7jailletc<title>mod_reqtimeout - Apache HTTP Server Version 2.5</title>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<link href="/style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<link href="/style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen<link href="/style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="/style/css/prettify.css" />
2e545ce2450a9953665f701bb05350f0d3f26275nd<script src="/style/scripts/prettify.min.js" type="text/javascript">
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen</script>
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<link href="/images/favicon.ico" rel="shortcut icon" /></head>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<body>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="page-header">
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p>
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<p class="apache">Apache HTTP Server Version 2.5</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<img alt="" src="/images/feather.gif" /></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="/images/left.gif" /></a></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="path">
3f08db06526d6901aa08c110b5bc7dde6bc39905nd<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">HTTP Server</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.5</a> &gt; <a href="./">Modules</a></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="page-content">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div id="preamble"><h1>Apache Module mod_reqtimeout</h1>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div class="toplang">
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<p><span>Available Languages: </span><a href="/en/mod/mod_reqtimeout.html" title="English">&nbsp;en&nbsp;</a></p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Set timeout and minimum data rate for receiving requests
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</td></tr>
7f0952c0239ea2d6e37b472db6fde4ef2718343dsf<tr><th><a href="module-dict.html#Status">Status:</a></th><td>Extension</td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="module-dict.html#ModuleIdentifier">Module�Identifier:</a></th><td>reqtimeout_module</td></tr>
b09fcdfc59ada4712150e7bcc7b502bb9e4601d8rjung<tr><th><a href="module-dict.html#SourceFile">Source�File:</a></th><td>mod_reqtimeout.c</td></tr></table>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
c44eeebd065e2c8cd028016b45c58afb480aaf8fdruggeri<div id="quickview"><h3>Topics</h3>
c44eeebd065e2c8cd028016b45c58afb480aaf8fdruggeri<ul id="topics">
c44eeebd065e2c8cd028016b45c58afb480aaf8fdruggeri<li><img alt="" src="/images/down.gif" /> <a href="#examples">Examples</a></li>
c44eeebd065e2c8cd028016b45c58afb480aaf8fdruggeri</ul><h3 class="directives">Directives</h3>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<ul id="toc">
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<li><img alt="" src="/images/down.gif" /> <a href="#requestreadtimeout">RequestReadTimeout</a></li>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</ul>
c44eeebd065e2c8cd028016b45c58afb480aaf8fdruggeri<ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar<div class="section">
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar<h2><a name="examples" id="examples">Examples</a></h2>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <ol>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar Allow 10 seconds to receive the request including the headers and
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar 30 seconds for receiving the request body:
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <pre class="prettyprint lang-config">RequestReadTimeout header=10 body=30</pre>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar </li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar Allow at least 10 seconds to receive the request body.
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar If the client sends data, increase the timeout by 1 second for every
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar 1000 bytes received, with no upper limit for the timeout (except for
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar the limit given indirectly by
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <code class="directive"><a href="/mod/core.html#limitrequestbody">LimitRequestBody</a></code>):
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <pre class="prettyprint lang-config">RequestReadTimeout body=10,MinRate=1000</pre>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar </li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar Allow at least 10 seconds to receive the request including the headers.
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar If the client sends data, increase the timeout by 1 second for every
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar 500 bytes received. But do not allow more than 30 seconds for the
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar request including the headers:
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <pre class="prettyprint lang-config">RequestReadTimeout header=10-30,MinRate=500</pre>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar </li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar Usually, a server should have both header and body timeouts configured.
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar If a common configuration is used for http and https virtual hosts, the
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar timeouts should not be set too low:
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar <pre class="prettyprint lang-config">RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500</pre>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar </li>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar </ol>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar</div>
1f1b6bf13313fdd14a45e52e553d3ff28689b717coar<div class="top"><a href="#page-header"><img alt="top" src="/images/up.gif" /></a></div>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<div class="directive-section"><h2><a name="RequestReadTimeout" id="RequestReadTimeout">RequestReadTimeout</a> <a name="requestreadtimeout" id="requestreadtimeout">Directive</a></h2>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<table class="directive">
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Set timeout values for receiving request headers and body from client.
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</td></tr>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>RequestReadTimeout
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf[header=<var>timeout</var>[-<var>maxtimeout</var>][,MinRate=<var>rate</var>]
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf[body=<var>timeout</var>[-<var>maxtimeout</var>][,MinRate=<var>rate</var>]
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</code></td></tr>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>header=20-40,MinRate=500 body=20,MinRate=500</code></td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="directive-dict.html#Context">Context:</a></th><td>server config, virtual host</td></tr>
7f0952c0239ea2d6e37b472db6fde4ef2718343dsf<tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_reqtimeout</td></tr>
b09fcdfc59ada4712150e7bcc7b502bb9e4601d8rjung<tr><th><a href="directive-dict.html#Compatibility">Compatibility:</a></th><td>Defaulted to disabled in
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sfversion 2.3.14 and earlier.</td></tr>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</table>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <p>This directive can set various timeouts for receiving the request headers
af4381d113faafc97340eaaa008840c7fcbcc8fdsf and the request body from the client. If the client fails to send headers or
af4381d113faafc97340eaaa008840c7fcbcc8fdsf body within the configured time, a <code>408 REQUEST TIME OUT</code> error
af4381d113faafc97340eaaa008840c7fcbcc8fdsf is sent.</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <p>For SSL virtual hosts, the header timeout values include the time needed
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf to do the initial SSL handshake. If the user's browser is configured to
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf query certificate revocation lists and the CRL server is not reachable, the
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf initial SSL handshake may take a significant time until the browser gives up
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf waiting for the CRL. Therefore the header timeout values should not be set
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf to very low values for SSL virtual hosts.
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf The body timeout values include the time needed for SSL renegotiation
cb8646cb564e6b2f7b1580b01ba4fbfd26231253sf (if necessary).</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <p>When an <code class="directive"><a href="/mod/core.html#acceptfilter">AcceptFilter</a></code> is in use
af4381d113faafc97340eaaa008840c7fcbcc8fdsf (usually the case on Linux and FreeBSD), the socket is not sent to the
af4381d113faafc97340eaaa008840c7fcbcc8fdsf server process before at least one byte (or the whole request for
af4381d113faafc97340eaaa008840c7fcbcc8fdsf <code>httpready</code>) is received. The header timeout configured with
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <code>RequestReadTimeout</code> is only effective after the server process has
af4381d113faafc97340eaaa008840c7fcbcc8fdsf received the socket.</p>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <p>For each of the two timeout types (header or body), there are three ways
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf to specify the timeout:
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <ul>
2e0e3814627be5f1f08d890663cfa6c1f7671a4crpluem
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <li><strong>Fixed timeout value</strong>:<br />
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <div class="example"><p><code><var>type</var>=<var>timeout</var></code></p></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <p>The time in seconds allowed for reading all of the request headers or
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf body, respectively. A value of 0 means no limit.</p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </li>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf <li><strong>Disable module for a vhost:</strong>:<br />
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf <div class="example"><p><code>header=0 body=0</code></p></div>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf <p>This disables <code class="module"><a href="/mod/mod_reqtimeout.html">mod_reqtimeout</a></code> completely.</p>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf </li>
16a0ba19b2cecf27e48c0c197ae1f3a96f447949sf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <li><strong>Timeout value that is increased when data is
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf received</strong>:<br />
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <div class="example"><p><code>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <var>type</var>=<var>timeout</var>,MinRate=<var>data_rate</var>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </code></p></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <p>Same as above, but whenever data is received, the timeout value is
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf increased according to the specified minimum data rate (in bytes per
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf second).</p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </li>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <li><strong>Timeout value that is increased when data is received, with an
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf upper bound</strong>:<br />
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <div class="example"><p><code>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <var>type</var>=<var>timeout</var>-<var>maxtimeout</var>,MinRate=<var>data_rate</var>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </code></p></div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf <p>Same as above, but the timeout will not be increased above the second
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf value of the specified timeout range.</p>
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </li>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
efb3a31a4ca193ac8629a4c039d481c29171d6e0sf </ul>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</div>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf<div class="bottomlang">
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung<p><span>Available Languages: </span><a href="/en/mod/mod_reqtimeout.html" title="English">&nbsp;en&nbsp;</a></p>
727872d18412fc021f03969b8641810d8896820bhumbedooh</div><div class="top"><a href="#page-header"><img src="/images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
0d0ba3a410038e179b695446bb149cce6264e0abnd<script type="text/javascript"><!--//--><![CDATA[//><!--
727872d18412fc021f03969b8641810d8896820bhumbedoohvar comments_shortname = 'httpd';
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedoohvar comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_reqtimeout.html';
0d0ba3a410038e179b695446bb149cce6264e0abnd(function(w, d) {
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
727872d18412fc021f03969b8641810d8896820bhumbedooh d.write('<div id="comments_thread"><\/div>');
0d0ba3a410038e179b695446bb149cce6264e0abnd var s = d.createElement('script');
0d0ba3a410038e179b695446bb149cce6264e0abnd s.type = 'text/javascript';
0d0ba3a410038e179b695446bb149cce6264e0abnd s.async = true;
ac082aefa89416cbdc9a1836eaf3bed9698201c8humbedooh s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
0d0ba3a410038e179b695446bb149cce6264e0abnd (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
0d0ba3a410038e179b695446bb149cce6264e0abnd }
0d0ba3a410038e179b695446bb149cce6264e0abnd else {
727872d18412fc021f03969b8641810d8896820bhumbedooh d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
0d0ba3a410038e179b695446bb149cce6264e0abnd }
0d0ba3a410038e179b695446bb149cce6264e0abnd})(window, document);
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh//--><!]]></script></div><div id="footer">
205f749042ed530040a4f0080dbcb47ceae8a374rjung<p class="apache">Copyright 2015 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen<p class="menu"><a href="/mod/">Modules</a> | <a href="/mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="/glossary.html">Glossary</a> | <a href="/sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
0d0ba3a410038e179b695446bb149cce6264e0abndif (typeof(prettyPrint) !== 'undefined') {
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd prettyPrint();
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd}
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd//--><!]]></script>
af4381d113faafc97340eaaa008840c7fcbcc8fdsf</body></html>