home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2004 November
/
CMCD1104.ISO
/
Software
/
Complet
/
Apache
/
apache_2.0.52-win32-x86-no_ssl.msi
/
Data.Cab
/
F278379_mod_unique_id.xml.ko
< prev
next >
Wrap
Extensible Markup Language
|
2004-05-07
|
8KB
|
174 lines
<?xml version="1.0" encoding="EUC-KR" ?>
<!DOCTYPE modulesynopsis SYSTEM "../style/modulesynopsis.dtd">
<?xml-stylesheet type="text/xsl" href="../style/manual.ko.xsl"?>
<!-- English Revision: 1.3.2.5 -->
<!--
Copyright 2004 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<modulesynopsis metafile="mod_unique_id.xml.meta">
<name>mod_unique_id</name>
<description>░ó ┐Σ├╗╕╢┤┘ └»└╧╟╤ ╜─║░└┌╕ª ░í┴÷┤┬ ╚»░µ║»╝÷╕ª
┴ª░°╟╤┤┘</description>
<status>Extension</status>
<sourcefile>mod_unique_id.c</sourcefile>
<identifier>unique_id_module</identifier>
<summary>
<p>└╠ ╕≡╡Γ└║ ╛ε╢▓ ╞»║░╟╤ ╗≤╚▓┐í╝¡╡╡ "╕≡╡τ" ┐Σ├╗┴▀┐í╝¡
└»└╧╟╧╡╡╖╧ ║╕└σ╡╚ ╜─║░└┌(identifier)╕ª ╕≡╡τ ┐Σ├╗┐í ┴ª░°╟╤┤┘.
╜╔┴÷╛ε └╠ ╜─║░└┌┤┬ ╞»║░╟╧░╘ ▒╕╝║╟╤ ┼¼╖»╜║┼═└╟ ┐⌐╖» ──╟╗┼═╡Θ
┴▀┐í╝¡╡╡ └»└╧╟╧┤┘. ░ó ┐Σ├╗╕╢┤┘ ╚»░µ║»╝÷
<code>UNIQUE_ID</code>╕ª ╝│┴ñ╟╤┤┘. └»└╧╟╤ ╜─║░└┌┤┬ ┐⌐╖»░í┴÷
┐δ╡╡╖╬ ╗τ┐δ╟╥ ╝÷ └╓┴÷╕╕, ╝│╕φ└║ └╠ ╣«╝¡└╟ ╣ⁿ└º╕ª │╤╛ε╝▒┤┘.</p>
</summary>
<section id="theory">
<title>└╠╖╨</title>
<p>╕╒└· └»┤╨╜║ ╜├╜║┼█┐í╝¡ ╛╞╞──í ╝¡╣÷░í ╛ε╢╗░╘ ╡┐└█╟╧┤┬┴÷
░ú╖½╚≈ ╗∞╞∞║╕└┌. Windows NT┤┬ ╟÷└τ └╠ ▒Γ┤╔└╗ ┴÷┐°╟╧┴÷ ╛╩┤┬┤┘.
└»┤╨╜║┐í╝¡ ╛╞╞──í┤┬ ┐⌐╖» └┌╜─└╗ ╕╕╡Θ░φ, └┌╜─ ╟┴╖╬╝╝╜║┤┬
╟╤╣°┐í ╟╤ ┐Σ├╗╛┐ ├│╕«╟╤┤┘. └┌╜─└║ ╜╟╟α┴▀┐í ┐⌐╖» ┐Σ├╗└╗
├│╕«╟╤┤┘. ┐⌐▒Γ╝¡ ┴▀┐Σ╟╤ ░═└║ └┌╜─╡Θ└╠ ╝¡╖╬ └┌╖ß╕ª
░°└»╟╧┴÷ ╛╩┤┬┤┘┤┬ ┴í└╠┤┘. ╛╒└╕╖╬ └┌╜─└╗ httpd ╟┴╖╬╝╝╜║╢≤░φ
╟╤┤┘.</p>
<p>┐⌐╖» ──╟╗┼═╖╬ └Ñ╗τ└╠╞«╕ª ╝¡║±╜║╟╤┤┘╕Θ ┼¼╖»╜║┼═(cluster)╢≤░φ
║╬╕Ñ┤┘. ░ó ──╟╗┼═┤┬ ┐⌐╖» ╛╞╞──í╕ª ╜╟╟α╟╥ ╝÷ └╓┤┘. └╠╡Θ ╕≡╡╬╕ª
"┐∞┴╓"╖╬ ║╕╕Θ, ┼¼╖»╜║┼═┐í └╓┤┬ ──╟╗┼═╡Θ░ú┐í ╕╣└║ ┼δ╜┼╛°└╠
░ó ┐Σ├╗╕╢┤┘ ┐∞┴╓┐í╝¡ └»└╧╟╤ ╜─║░└┌╕ª ╕╕╡Θ ╝÷ └╓┤┘.</p>
<p>┼¼╖»╜║┼═┐í └╓┤┬ ──╟╗┼═┤┬ ┤┘└╜ ┐Σ▒╕╗τ╟╫└╗ ╕╕┴╖╟╪╛▀ ╟╤┤┘.
(──╟╗┼═╕ª ╟╤┤δ╕╕ ╗τ┐δ╟╧┤⌡╢≤╡╡ ──╟╗┼═ ╜├░ú└╗ NTP┐═ ╡┐▒Γ╟╪╛▀
╟╤┤┘.)</p>
<ul>
<li>──╟╗┼═ ╜├░ú└║ NTP│¬ ┤┘╕Ñ │╫╞«┐≈ ╜├░ú ╟┴╖╬┼Σ─▌░·
╡┐▒Γ╚¡╡╚┤┘.</li>
<li>──╟╗┼═└╟ ╚ú╜║╞«╕φ└╠ ╕≡╡╬ ┤┘╕ú┤┘. ▒╫╖í╝¡ ╕≡╡Γ└╠
╚ú╜║╞«╕φ└╕╖╬ ├ú└╕╕Θ ┼¼╖»╜║┼═┐í └╓┤┬ ░ó ──╟╗┼═╕╢┤┘ ┤┘╕Ñ
IP ┴╓╝╥╕ª ╛≥┤┬┤┘.</li>
</ul>
<p>┐ε┐╡├╝┴ª┐í╝¡ pid (╟┴╖╬╝╝╜║ id)░í 32║±╞«┐í ╡Θ╛ε░ú┤┘░φ
░í┴ñ╟╤┤┘. ┐ε┐╡├╝┴ª░í pid╖╬ 32║±╞« └╠╗≤└╗ ╗τ┐δ╟╤┤┘╕Θ ░ú┤▄╟╧┴÷╕╕
─┌╡σ╕ª ╝÷┴ñ╟╪╛▀ ╟╤┤┘.</p>
<p>└╠╖▒ ░í┴ñ╟╧┐í ┐∞╕«┤┬ ╛ε╢▓ ╜├┴í┐í╝¡ ┼¼╖»╜║┼═└╟ ╛ε╢▓ ──╟╗┼═┐í
└╓┤┬ ╛ε╢▓ httpd ╟┴╖╬╝╝╜║╕ª ┤┘╕Ñ ╕≡╡τ httpd ╟┴╖╬╝╝╜║╡Θ░·
▒╕║░╟╥ ╝÷ └╓┤┘. ──╟╗┼═└╟ IP ┴╓╝╥┐═ httpd ╟┴╖╬╝╝╜║└╟ pid╕╕└╕╖╬╡╡
├µ║╨╚≈ ▒╕║░╟╥ ╝÷ └╓┤┘. ▒╫╖í╝¡ ┐Σ├╗┐í ┤δ╟╪ └»└╧╟╤ ▒╕║░└┌╕ª
╕╕╡σ╖┴╕Θ ╜├░ú┬≈╕ª ▒╕║░╟╥ ╝÷╕╕ └╓└╕╕Θ ╡╚┤┘.</p>
<p>╜├░ú└╗ ▒╕║░╟╧▒Γ└º╟╪ └»┤╨╜║ ╜├░ú(timestamp, ╝╝░Φ ╟Ñ┴╪╜├╖╬
1970│Γ 1┐∙ 1└╧ └╠╚─ ┴÷│¡ ├╩)░· 16║±╞« ─½┐ε┼═╕ª ╗τ┐δ╟╤┤┘.
└»┤╨╜║ ╜├░ú└║ ├╩┤▄└º└╠░φ, ─½┐ε┼═┤┬ └╧ ├╩╡┐╛╚ 65536▒ε┴÷
┴⌡░í╟╤┤┘. <em>( ip_addr, pid, time_stamp, counter )</em>
╣¡└╜└║ ╛ε╢▓ httpd ╟┴╖╬╝╝╜║┐í╝¡ └╧ ├╩╡┐╛╚ 65536 ┐Σ├╗└╗ ▒╕║░╟╥
╝÷ └╓┤┘. ▒╫╖»│¬ ─½┐ε┼═┤┬ pid╕ª └τ╗τ┐δ╟╧┤┬ ╣«┴ª╕ª ╟╪░ß╟╪╛▀
╟╤┤┘.</p>
<p>httpd └┌╜─└╗ ╕╕╡Θ╕Θ ─½┐ε┼═┤┬ ( ╟÷└τ ╣╨╕«├╩ │¬┤⌐▒Γ 10 )└╗
65536└╕╖╬ │¬┤½ │¬╕╙┴÷░í ╡╚┤┘. (╕ε╕ε ╜├╜║┼█└╟ ╣╨╕«├╩ ╜├░ú┐í╝¡
╟╧└º ║±╞«░í └╧─í╟╧┴÷╛╩┤┬ ╣«┴ª╢º╣«┐í └╠ ░°╜─└╗ ╕╕╡Θ╛·┤┘.)
└»└╧╟╤ ╜─║░└┌╕ª ╕╕╡Θ╢º ╗τ┐δ╟╧┤┬ ╜├░ú└║ └Ñ╝¡╣÷░í ┐Σ├╗└╗ ╣▐└║
╜├░ú└╠┤┘. ─½┐ε┼═┤┬ ╜─║░└┌╕ª ╕╕╡Θ╢º╕╢┤┘ ┴⌡░í╟╤┤┘ (▒╫╕«░φ
┤┘╜├ ╜├└█╟╤┤┘).</p>
<p>─┐│╬└║ ╟┴╖╬╝╝╜║╕ª ╞≈┼⌐╟╥╢º(fork) ░ó ╟┴╖╬╝╝╜║┐í pid╕ª
╟╥┤τ╟╧░φ, pid┤┬ ┤┘╜├ ╜├└█╟╥ ╝÷ └╓┤┘. (pid┤┬ ╕╣└║ └»┤╨╜║┐í╝¡
16║±╞«└╠┴÷╕╕, ├╓▒┘ ╜├╜║┼█└║ 32║±╞«╖╬ ╚«└σ╟▀┤┘.) ▒╫╖í╝¡ ╜├░ú└╠
┴÷│¬╕Θ ░░└║ pid╕ª └τ╗τ┐δ╟╥ ╝÷ └╓┤┘. ▒╫╖»│¬ ░░└║ ╜├░ú┐í pid╕ª
└τ╗τ┐δ╟╧┴÷ ╛╩┤┬┤┘╕Θ └º└╟ ╣¡└╜└║ └»└╧╟╧┤┘. ┴∩, ┐∞╕«┤┬ ╜├╜║┼█└╠
└╧├╩╡┐╛╚ ╟┴╖╬╝╝╜║╕ª 65536░│ └╠╗≤ ╕╕╡Θ┴÷ ╛╩┤┬┤┘░φ ░í┴ñ╟╤┤┘.
(╛ε╢▓ └»┤╨╜║┐í╝¡┤┬ 32768░│ └╠╗≤ ╟┴╖╬╝╝╜║╕ª ╕╕╡Θ╕Θ pid └τ╗τ┐δ
╣«┴ª░í ╣▀╗²╟╥ ╝÷ └╓┴÷╕╕, └╠░═┴╢┬≈╡╡ └╧╛ε│» ░═░░┴÷ ╛╩┤┘.)</p>
<p>╜├░ú└╠ ╛ε╢▓ └╠└»┐í╝¡░╟ ╣▌║╣╡╚┤┘░φ ░í┴ñ╟╪║╕└┌. ┴∩, ╜├╜║┼█
╜├░Φ░í ▓┐┐⌐╝¡ ╜├░ú└╠ ░·░┼╖╬ ╡╣╛╞░í┤┬ (╚ñ└║ ╜├░Φ░í │╩╣½ ╛╒╝¡░í╝¡
┐├╣┘╖╬ └τ╝│┴ñ╟╤╚─ ╣╠╖í┐í ░░└║ ╜├░ú└╠ ╡╟┤┬) ░µ┐∞┤┘. └╠ ░µ┐∞
pid┐═ ╜├░ú└╗ ╕≡╡╬ └τ╗τ┐δ╟╥ ╝÷ └╓┤┘. ─½┐ε┼═└╟ ├╩▒Γ╚¡ ░°╜─└║
└╠ ╣«┴ª╕ª ╟╪░ß╟╧╖┴░φ ░φ╛╚╡╟╛·┤┘. ┐∞╕«┤┬ ╜╟┴ª ╣½└█└º ╝²└┌╖╬
─½┐ε┼═╕ª ├╩▒Γ╚¡╟╧▒µ ┐°╟╧┴÷╕╕, ╕╣└║ ╜├╜║┼█┐í╝¡ └╠╖▒ ╝÷╕ª
╜▒░╘ ╛≥└╗ ╝÷ ╛°┤┘. (<em>┐╣╕ª ╡Θ╛ε</em>, seed░í ╟╩┐Σ╟╧▒Γ╢º╣«┐í
rand()╕ª ╗τ┐δ╟╥ ╝÷ ╛°░φ, ╜├░ú└║ ├╓╝╥╟╤ └╧├╩ ┤▄└º└╠▒Γ╢º╣«┐í
╜├░ú└╕╖╬ seed╖╬ ╗τ┐δ╟╥ ╝÷ ╛°┤┘.) ┴∩ ┐╧║«╟╤ ╟╪░ß├Ñ└╠ ╛°┤┘.</p>
<p>▒╫╖│ └╠ ╣µ╣²└║ ╛≤╕╢│¬ ▒ª┬·└╗▒ε? ──╟╗┼═┴▀ ╟╧│¬░í ┐Σ├╗└╗
├╩┤τ ├╓┤δ 500░│ (╜├╜║┼█└║ └╧╣▌└√└╕╖╬ ┴ñ└√└╬ ╞─└╧└╗ └ⁿ╝█╟╧┤┬
░═ └╠╗≤└╟ └█╛≈└╗ ╟╧╣╟╖╬ └╠ ▒█└╗ ╛▓┤┬ ╜├┴í┐í╝¡ ╗≤┤τ╚≈ │⌠└║
░¬└╠┤┘.) ╝¡║±╜║╟╤┤┘░φ ░í┴ñ╟╧└┌. ╡┐╜├┐í ╛≤╕╢╕╕┼¡└╟ ┼¼╢≤└╠╛≡╞«╕ª
├│╕«╟╧┤┬░í┐í ╡√╢≤ └┌╜─└╟ ░│╝÷░í ░ß┴ñ╡╚┤┘. ▒╫╖»│¬ ┐∞╕«┤┬
║±░ⁿ└√└╕╖╬ ╟╤ └┌╜─└╠ ┐Σ├╗└╗ ├╩┤τ 500░│ ├│╕«╟╥ ╝÷ └╓┤┘░φ
░í┴ñ╟╤┤┘. └τ╗τ┐δ╟╤ pid╕ª ░í┴° └┌╜─└╟ 500░│ ┐Σ├╗░· └╠└ⁿ └┌╜─└╟
500░│ ┐Σ├╗└╟ ─½┐ε┼═░¬└╠ ░π─Ñ ╝÷ └╓┤┬ ─½┐ε┼═ ╜├└█░¬ ░µ┐∞╝÷┤┬
1000░│└╠┤┘. ▒╫╖í╝¡ (├╩┤▄└º┐í╝¡) └┌╜─└╠ ─½┐ε┼═░¬└╗ ╣▌║╣╟╧┐⌐
└»└╧╝║└╠ ▒·┴· ╚«╖ⁿ└║ 1.5%└╠┤┘. └╠░═└║ ╕┼┐∞ ║±░ⁿ└√└╬ ░í┴ñ└╠╕τ,
╜╟┴ª └╠╖▓ ░µ┐∞┤┬ ╗≤┤τ╚≈ ┤⌡ │╖┤┘. ▒╫╖í╡╡ ╜├╜║┼█┐í╝¡ └╠╖▒
└╧└╠ ╣▀╗²╟╥ ░═ ░░┤┘╕Θ (╝╥╜║╕ª ╝÷┴ñ╟╧┐⌐) ─½┐ε┼═╕ª 32║±╞«╖╬
╕╕╡Θ╛ε╢≤.</p>
<p>╝╢╕╙┼╕└╙╢º╣«┐í ╜├░Φ░í "╡┌╖╬ ░í┤┬" ░═└╗ ░╞┴ñ╟╥┴÷╡╡ ╕≡╕Ñ┤┘.
▒╫╖»│¬ ┐⌐▒Γ╝¡ ╗τ┐δ╟╧┤┬ ╜├░ú└║ ▒╣┴ª ╟Ñ┴╪╜├(UTC), ┴∩ ╜├░ú└╠
"╟╫╗≤" ╛╒└╕╖╬ ░í╣╟╖╬ ╣«┴ª░í ╛°┤┘. x86▒Γ╣▌ └»┤╨╜║┐í╝¡┤┬
└√└²╟╤ ╝│┴ñ└╠ ╟╩┐Σ╟╧┤┘. ╕▐└╬║╕╡σ ╜├░Φ░í UTC╕ª ╗τ┐δ╟╧╡╡╖╧
╝│┴ñ╟╪╛▀ ╟╤┤┘. ▒╫╖»│¬ NTP╕ª ╗τ┐δ╟╤┤┘╕Θ └τ╜├└█╚─ ┴╢▒▌ ┴÷│¬╕Θ
UTC ╜├░ú┐í ┐├╣┘╖╬ ╕┬├ß┤┘.</p>
<p>╚»░µ║»╝÷ <code>UNIQUE_ID</code>┤┬ MIME base64 └╬─┌╡∙░·
║±╜┴╟╤ ╣µ╣²└╕╖╬ 112║±╞« (32║±╞« IP ┴╓╝╥, 32║±╞« pid, 32║±╞«
╜├░ú, 16║±╞« ─½┐ε┼═) ╣¡└╜└╗ ╛╦╞─║¬ <code>[A-Za-z0-9@-]</code>╖╬
╟Ñ╟÷╟╤┤┘. ╜╟┴ª MIME base64 ╛╦╞─║¬└║
<code>[A-Za-z0-9+/]</code>└╠┴÷╕╕ <code>+</code>┐═
<code>/</code>┤┬ URL┐í╝¡ ╞»║░╟╤ └╟╣╠╖╬ ╗τ┐δ╟╧╣╟╖╬ ┴ª┐▄╟▀┤┘.
╕≡╡τ ░¬└╗ │╫╞«┐≈ ╣┘└╠╞«╝°╝¡╖╬ └╬─┌╡∙╟╧▒Γ╢º╣«┐í ┤┘╕Ñ ╣┘└╠╞«╝°╝¡╕ª
╗τ┐δ╟╧┤┬ ╛╞┼░┼╪├─░ú┐í ░¬└╠ ░░┤┘. ╜╟┴ª └╬─┌╡∙ ╝°╝¡┤┬
╜├░ú, IP ┴╓╝╥, pid, ─½┐ε┼═ ╝°╝¡└╠┤┘. └╠ ╝°╝¡┐í┤┬ ╛ε╢▓ ╕±└√└╠
└╓┴÷╕╕, ╟┴╖╬▒╫╖Ñ└║ └╬─┌╡∙ ╝°╝¡┐í └╟┴╕╟╧┐⌐ ░¬╡Θ└╗ ║╨╝«╟╧╕Θ
╛╚╡╩└╗ ░¡┴╢╟╤┤┘. ╟┴╖╬▒╫╖Ñ└║ └╬─┌╡∙╡╚ <code>UNIQUE_ID</code>
└ⁿ├╝╕ª ╟╤ ┤▄└º╖╬ ╗²░ó╟╧░φ, ┤┘╕Ñ <code>UNIQUE_ID</code>┐═
╡┐└╧╟╤┴÷╕╕ ║±▒│╟╥ ╝÷ └╓┤┘.</p>
<p>╝°╝¡┤┬ ╛╒└╕╖╬ ▒Γ┴╕└╟ <code>UNIQUE_ID</code> ╡Ñ└╠┼═║ú└╠╜║┐═
├µ╡╣└╗ ┐░╖┴╟╧┴÷╛╩░φ └╬─┌╡∙└╗ ║»░µ╟╥ ╝÷ └╓╡╡╖╧ ░φ╛╚╟▀┤┘.
╗⌡╖╬┐ε └╬─┌╡∙└║ ├╣ ╟╫╕±└╕╖╬ ╜├░ú└╗ ╗τ┐δ╟╧░┼│¬, ░░└║ ╛╦╞─║¬░·
║±╞« ▒µ└╠╕ª ╗τ┐δ╟╥ ╝÷╡╡ └╓┤┘. ╜├░ú└╠ ▒Γ║╗└√└╕╖╬ ┴⌡░í╟╧┤┬ ░¬└╠╣╟╖╬
┼¼╖»╜║┼═┐í └╓┤┬ ╕≡╡τ ──╟╗┼═░í ┐Σ├╗ ╝¡║±╜║╕ª ┴▀┤▄╟╧░φ └╠└ⁿ
└╬─┌╡∙ ╟ⁿ╜─└╗ ▒╫╕╕ ╗τ┐δ╟╧▒Γ└º╟╪ <em>▒Γ┴╪ ├╩(flag second)</em>╕╕└╕╖╬
├µ║╨╟╧┤┘. └╠╚─ ┐Σ├╗└╗ └τ░╘╟╧░φ ╗⌡╖╬┐ε └╬─┌╡∙└╗ ╜├└█╟╥ ╝÷
└╓┤┘.</p>
<p>┐∞╕«┤┬ └╠ ╣µ╣²└╠ └╠ ╣«┴ª┐í ┤δ╟╧┐⌐ ╗≤┤δ└√└╕╖╬ ╞≈╞├░í┤╔╟╤
╟╪░ß├Ñ└╠╢≤░φ ╣╧┤┬┤┘. └╠ ╣µ╣²└║ Windows NT┐═ ░░└║ ╕╓╞╝╛▓╖╣╡σ
╜├╜║┼█└╕╖╬ ╚«└σ╟╥ ╝÷ └╓░φ, ╛╒└╕╖╬ ┐δ╡╡┐í ╡√╢≤ ╚«└σ╟╥ ╝÷
└╓┤┘. ╣╠╖í┐í ╟╩┐Σ╟╤╕╕┼¡ ┤⌡ ▒Σ ╜─║░└┌╕ª ╕╕╡Θ ╝÷ └╓▒Γ╢º╣«┐í
╗²╝║╟╤ ╜─║░└┌┤┬ ▒Γ║╗└√└╕╖╬ ┐╡┐°╟╤ ╝÷╕φ└╗ ░í┴°┤┘. ▒Γ║╗└√└╕╖╬
┼¼╖»╜║┼═└╟ ──╟╗┼═╡Θ ╗τ└╠┐í ┼δ╜┼└╠ ╟╩┐Σ╛°░φ (║╬╟╧░í └█└║
NTP ╡┐▒Γ╕╕ ╟╩┐Σ╟╧┤┘), httpd ╟┴╖╬╝╝╜║ ╗τ└╠┐í ┼δ╜┼╡╡ ╟╩┐Σ╛°┤┘
(─┐│╬└╠ ║╬┐⌐╟╧┤┬ pid░¬└╠ ╛╧╣¼└√└╬ ┼δ╜┼└╠┤┘). ╕┼┐∞ ╞»└╠╟╤
╗≤╚▓└╠╢≤╕Θ └╬╜─└┌ ┼⌐▒Γ╕ª ┴┘└╧ ╝÷ └╓┴÷╕╕ ┤⌡ ╕╣└║ ┴ñ║╕╕ª
░í┴ñ╟╪╛▀ ╟╤┤┘. (┐╣╕ª ╡Θ╛ε, ╛ε╢▓ ╗τ└╠╞«┐í╝¡ 32║±╞« IP ┴╓╝╥
▒╕║╨└║ ║╥╟╩┐Σ╟╧░╘ ┼⌐┴÷╕╕, └╠╕ª ┴┘└╠┤┬ ╣µ╣²└║ ╗≤╚▓┐í ╡√╢≤
┤┘╕ú┤┘.) </p>
</section>
</modulesynopsis>