mirror of
https://github.com/mpv-player/mpv
synced 2024-12-30 11:02:10 +00:00
d9f738ab54
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@17707 b3059339-0415-0410-9bf9-f77b7e298cf2
473 lines
18 KiB
XML
473 lines
18 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- synced with 1.38 -->
|
|
<chapter id="ports" xreflabel="Ports">
|
|
<title>Adaptaciones</title>
|
|
|
|
<sect1 id="linux">
|
|
<title>Linux</title>
|
|
<para>
|
|
La principal plataforma de desarrollo es Linux en x86, sin embargo
|
|
<application>MPlayer</application> funciona en muchas otras adaptaciones de
|
|
Linux. Los paquetes binarios de <application>MPlayer</application> están
|
|
disponibles desde muchos sitios. Sin embargo <emphasis role="bold">ninguno
|
|
de estos paquetes tiene soporte</emphasis>. Reporte los problemas a sus
|
|
autores, no a nosotros.
|
|
</para>
|
|
|
|
<sect2 id="debian">
|
|
<title>Empaquetado para Debian</title>
|
|
<para>
|
|
Para construir un paquete de Debian, ejecute la siguiente órden en el directorio
|
|
de fuentes de <application>MPlayer</application>:
|
|
<screen>fakeroot debian/rules binary</screen>
|
|
Y después puede instalar el paquete <filename>.deb</filename> como root de la
|
|
manera habitual:
|
|
<screen>dpkg -i ../mplayer_<replaceable>version</replaceable>.deb</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Christian Marillat ha hecho los paquetes no oficiales de
|
|
<application>MPlayer</application> para Debian, de
|
|
<application>MEncoder</application> y de tipografías para que en un momento,
|
|
pueda (apt-)obtenerlos desde su <ulink url="http://marillat.free.fr/">página
|
|
personal</ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="rpm">
|
|
<title>Empaquetado RPM</title>
|
|
<para>
|
|
Dominik Mierzejewski ha creado y mantiene los paquetes oficiales RPM para Red Hat de
|
|
<application>MPlayer</application>. Están disponibles en su
|
|
<ulink url="http://greysector.rangers.eu.org/mplayer.html">página personal</ulink>.
|
|
</para>
|
|
|
|
<para>
|
|
Los paquetes RPM para Mandrake están disponibles en el
|
|
<ulink url="http://plf.zarb.org/">P.L.F.</ulink>.
|
|
SuSE los usa para incluir una versión mutilada de
|
|
<application>MPlayer</application> en su distribución.
|
|
Esta versión será eliminada en sus próximas liberaciones. Puede obtener RPMs
|
|
que funcionan desde
|
|
<ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="arm">
|
|
<title>ARM</title>
|
|
<para>
|
|
<application>MPlayer</application> funciona en PDAs con Linux en CPU ARM p.e.
|
|
Sharp Zaurus, Compaq Ipaq. La manera más facil de obtener
|
|
<application>MPlayer</application> es bajarlo desde uno de los sitios de
|
|
paquetes de <ulink url="http://www.openzaurus.org">OpenZaurus</ulink>. Si
|
|
desea compilarlo usted mismo, debe mirar en
|
|
<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/mplayer?nav=index.html|src/.|src/packages">mplayer</ulink>
|
|
y el directorio
|
|
<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/libavcodec?nav=index.html|src/.|src/packages">libavcodec</ulink>
|
|
en el raiz de la distribución de OpenZaurus. Ahí siempre tienen los Makefile
|
|
y parches más recientes usados para construir un
|
|
<application>MPlayer</application> desde CVS con
|
|
<systemitem class="library">libavcodec</systemitem>.
|
|
Si necesita un entorno GUI, puede usar xmms-embebido.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="bsd">
|
|
<title>*BSD</title>
|
|
<para>
|
|
<application>MPlayer</application> funciona en FreeBSD, OpenBSD, NetBSD,
|
|
BSD/OS y Darwin. Hay versiones ports/pkgsrc/fink/etc de
|
|
<application>MPlayer</application> disponibles que son probablemente más
|
|
faciles de usar que nuestras fuentes en crudo.
|
|
</para>
|
|
|
|
<para>
|
|
Para construir <application>MPlayer</application> necesita GNU make (gmake -
|
|
el make nativo de BSD no funciona) y una versión reciente de binutils.
|
|
</para>
|
|
|
|
<para>
|
|
Si <application>MPlayer</application> se queja de que no encuentra
|
|
<filename>/dev/cdrom</filename> o <filename>/dev/dvd</filename>,
|
|
cree un enlace simbólico apropiado:
|
|
<screen>ln -s /dev/<replaceable>(su_dispositivo_de_cdrom)</replaceable> /dev/cdrom</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Para usar DLLs Win32 con <application>MPlayer</application> necesita
|
|
re-compilar el kernel con la "<envar>opción USER_LDT</envar>"
|
|
(a no ser que ejecute FreeBSD-CURRENT, donde es así por defecto).
|
|
</para>
|
|
|
|
|
|
<sect2 id="freebsd">
|
|
<title>FreeBSD</title>
|
|
<para>
|
|
Si su CPU tiene SSE, recompile el kernel con
|
|
"<envar>la opción CPU_ENABLE_SSE</envar>" (FreeBSD-STABLE o parches
|
|
del kernel son requeridos).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="openbsd">
|
|
<title>OpenBSD</title>
|
|
<para>
|
|
Debido a limitaciones en diferentes versiones de gas (relocalización frente a MMX),
|
|
puede ser necesario compilar en dos pasos: Primero asegúrate de que el no-nativo
|
|
está el primero en tu <envar>$PATH</envar> y haz <command>gmake -k</command>, después
|
|
asegúrate de que la versión nativa es la que se usa y haz <command>gmake</command>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 id="darwin">
|
|
<title>Darwin</title>
|
|
<para>
|
|
Vea la sección <link linkend="macos">Mac OS</link>.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 id="solaris">
|
|
<title>Sun Solaris</title>
|
|
<para>
|
|
<application>MPlayer</application> debería funcionar en Solaris 2.6 o posterior.
|
|
</para>
|
|
|
|
<para>
|
|
En <emphasis role="bold">UltraSPARCs</emphasis>,
|
|
<application>MPlayer</application> tiene la ventaja de las extensiones
|
|
<emphasis role="bold">VIS</emphasis> (equivalentes a MMX), actualmente
|
|
solo en
|
|
<systemitem class="library">libmpeg2</systemitem>,
|
|
<systemitem class="library">libvo</systemitem> y
|
|
<systemitem class="library">libavcodec</systemitem>, pero no en
|
|
<systemitem class="library">mp3lib</systemitem>. Puede ver un archivo
|
|
VOB en una CPU a 400MHz. Necesita tener
|
|
<ulink url="http://www.sun.com/sparc/vis/mediaLib.html"><systemitem class="library">mLib</systemitem></ulink>
|
|
instalado.
|
|
</para>
|
|
|
|
<para>
|
|
Para contruir el paquete necesita GNU <application>make</application>
|
|
(<filename>gmake</filename>, <filename>/opt/sfw/gmake</filename>), el make
|
|
nativo de Solaris no funciona. Errores típicos que puede obtener construyendo
|
|
con el make de Solaris en lugar de con el make de GNU:
|
|
<screen>
|
|
% /usr/ccs/bin/make
|
|
make: Error fatal en lector: Makefile, línea 25: Fin de línea visto inesperado
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
En Solaris SPARC, necesita el Compilador GNU C/C++; no importa si el compilador
|
|
GNU C/C++ está configurado con o sin el ensamblador GNU.
|
|
</para>
|
|
|
|
<para>
|
|
En Solaris x86, necesita el ensamblador GNU y el compilador GNU C/C++,
|
|
¡configurado para usar el ensamblador GNU! El código de
|
|
<application>MPlayer</application> en la plataforma
|
|
x86 hace dificil el uso de las instrucciones de MMX, SSE y 3DNOW! que no puede
|
|
ser compilado usando el ensamblador de Sun <filename>/usr/ccs/bin/as</filename>.
|
|
</para>
|
|
|
|
<para>El script <filename>configure</filename> intenta encontrarlo, qué
|
|
programa ensamblador es usado por tu órden "gcc" (en caso de que la
|
|
autodetección falle, use la opción
|
|
<option>--as=<replaceable>/donde/este/instalado/gnu-as</replaceable></option>
|
|
para decirle al script <filename>configure</filename> donde puede encontrar el "as"
|
|
de GNU en su sistema).
|
|
</para>
|
|
|
|
<para>
|
|
Mensaje de error de <filename>configure</filename> en un sistema Solaris x86
|
|
usando GCC sin el ensamblador GNU:
|
|
<screen>
|
|
% configure
|
|
...
|
|
Comprobando ensamblador (/usr/ccs/bin/as) ... , fallo
|
|
Por favor, actualice(baje versión) de binutils a 2.10.1...
|
|
</screen>
|
|
(Solución: Instalar y usar un gcc configurado con <option>--with-as=gas</option>)
|
|
</para>
|
|
|
|
<para>
|
|
Error típico que se obtiene cuando se construye con un compilador GNU C que no
|
|
usa GNU as:
|
|
<screen>
|
|
% gmake
|
|
...
|
|
gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
|
|
-fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c
|
|
Assembler: mplayer.c
|
|
"(stdin)", line 3567 : Illegal mnemonic
|
|
"(stdin)", line 3567 : Error de sintaxis
|
|
... más errores "Illegal mnemonic" y "Error de sintaxis" ...
|
|
</screen>
|
|
</para>
|
|
|
|
<para>
|
|
Debido a fallos en Solaris 8, puede que no se puedan reproducir discos DVD mayores
|
|
de 4 GB:
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
El controlador sd(7D) en Solaris 8 x86 tiene un error cuando accede a un bloque
|
|
de disco >4GB en un dispositivo usando un tamaño de bloque lógico != DEV_BSIZE
|
|
(p.e. CD-ROM y medios DVD). Debido a un error de desbordamiento de entero de
|
|
32Bit, un módulo de 4GB de dirección de disco es accedido.
|
|
(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22516"/>).
|
|
Este problema no existe en la versión SPARC de Solaris 8.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Un error similar está presente en el código de sistema de archivos hsfs(7FS)
|
|
(aka ISO9660), hsfs no puede soportar particiones/discos mayores de 4GB, todos
|
|
los datos se acceden módulo 4GB
|
|
(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>).
|
|
El problema hsfs puede ser corregido instalando el parche 109764-04 (sparc) /
|
|
109765-04 (x86).
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
|
|
<para>
|
|
En Solaris con una CPU UltraSPARC, puede obtener alguna velocidad extra usando
|
|
las instrucciones VIS de la CPU para algunas operaciones que consumen un tiempo.
|
|
La acelación VIS puede ser usada en <application>MPlayer</application>
|
|
llamando a funciones en la
|
|
<ulink url="http://www.sun.com/sparc/vis/mediaLib.html">mediaLib</ulink> de Sun.
|
|
</para>
|
|
|
|
<para>
|
|
Las operaciones aceleradas de mediaLib son usadas por el decodificador mpeg2 de
|
|
video y por la conversión en espacio de color en los controladoers de salida de
|
|
video.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="irix">
|
|
<title>Silicon Graphics Irix</title>
|
|
<para>
|
|
Puede probar a instalar el programa de instalación GNU, y (si no lo tiene
|
|
en su ruta global) apuntar a donde esté con:
|
|
<screen>./configure --with-install=<replaceable>/ruta/y/nombre/del/instalador</replaceable></screen>
|
|
</para>
|
|
|
|
<para>
|
|
O puede usar el instalador por defecto que viene con IRIX 6.5 y en ese
|
|
caso debe editar el <filename>Makefile</filename> a mano un poquito.
|
|
Cambie las dos siguientes líneas:
|
|
<programlisting>
|
|
$(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
|
|
|
|
$(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
|
|
</programlisting>
|
|
por:
|
|
<programlisting>
|
|
$(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
|
|
|
|
$(INSTALL) -m 644 codecs.conf $(CONFDIR)/
|
|
</programlisting>
|
|
Y entonces haga (desde el directorio de fuentes de
|
|
<application>MPlayer</application>):
|
|
<screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen>
|
|
y después continúe con la construcción e instalación.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="qnx">
|
|
<title>QNX</title>
|
|
<para>
|
|
Funciona. Necesita descargar SDL para QNX, e instalarlo. Después ejecute
|
|
<application>MPlayer</application> con las opciones <option>-vo sdl:photon</option>
|
|
y <option>-ao sdl:nto</option> y debe ir rápido.
|
|
</para>
|
|
|
|
<para>
|
|
La salida <option>-vo x11</option> puede ser más lenta que en Linux, porque QNX
|
|
solo tiene <emphasis>emulación</emphasis> de X que es MUY lenta. Use SDL.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="windows">
|
|
<title>Windows</title>
|
|
|
|
<para>Sí, <application>MPlayer</application> funciona en Windows bajo
|
|
<ulink url="http://www.cygwin.com/">Cygwin</ulink> y
|
|
<ulink url="http://www.mingw.org/">MinGW</ulink>.
|
|
No tiene aún una interfaz gráfica (GUI), pero la versión en línea de órdenes
|
|
es casi completamente funcional. <ulink url="../../tech/patches.txt">Los parches</ulink>
|
|
son siempre bienvenidos. Debe consultar también la lista de correo
|
|
<ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-cygwin/">mplayer-cygwin</ulink>
|
|
para obtener ayuda y la información de última hora.</para>
|
|
|
|
<para>Se obtienen mejores resultados con el controlador de salida DirectX nativo
|
|
(<option>-vo directx</option>) y el controlador nativo de salida de audio de
|
|
Windows (<option>-ao win32</option>). Alternativas son OpenGL y SDL, pero el
|
|
rendimiento de OpenGL varía en gran medida entre sistemas y se sabe que SDL
|
|
distorsiona el sonido y la imagen o bloquea algunos sistemas. Si la imagen se ve
|
|
distorsionada, pruebe a desactivar la aceleración por hardware con
|
|
<option>-vo directx:noaccel</option>.
|
|
Descargue
|
|
<ulink url="http://www.videolan.org/vlc/dx7headers.tgz">los archivos de cabecera de DirectX 7</ulink>
|
|
para compilar el controlador de salida de video de DirectX.</para>
|
|
|
|
<para>PUede usar codecs Win32 y Real Win32 (los Real de Linux no) si lo desea. Ponga
|
|
los codecs en algún lugar de su ruta/path o
|
|
pase la opción <option>--with-codecsdir=<replaceable>c:/ruta/a/sus/codecs</replaceable></option>
|
|
(alternativamente
|
|
<option>--with-codecsdir=<replaceable>/ruta/a/sus/codecs</replaceable></option> solo en Cygwin) a
|
|
<filename>configure</filename>. Tenemos informes de que las DLLs de Real
|
|
deben tener permisos de escritura para el usuario que usa
|
|
<application>MPlayer</application>, pero solo en algunos sistemas.
|
|
Pruebe ha dar permisos de escritura si tiene problemas. Las DLLs de
|
|
QuickTime también funcionan, pero debe colocarlas en su directorio de
|
|
sistema de Windows
|
|
(<filename class="directory"><replaceable>C:\Windows\system\</replaceable></filename>
|
|
o similar).</para>
|
|
|
|
<para>La consola de Cygwin/MinGW es extrañamente lenta. Redirigir la salida o usar
|
|
la opción <option>-quiet</option> se ha informado que mejora el rendimiento en algunos
|
|
sistemas. El renderizado directo (<option>-dr</option>) también puede ayudar.
|
|
Puede prevenir el parpadeo de OSD a través de doble buffer con la opción
|
|
<option>-double</option>. Si la reproducción va a saltos, pruebe
|
|
<option>-autosync 100</option>. Si alguna de estas opciones le ayuda, puede que
|
|
desee ponerlas en su archivo de configuración.</para>
|
|
|
|
<para>Sascha Sommer libera binarios oficiales para Windows de vez en
|
|
cuando, Joey Parrish hace paquetes completos para Windows no oficiales
|
|
con instalador. Búsquelos en la sección de Windows de
|
|
<ulink url="http://www.mplayerhq.hu/projects.html#windows">nuestra
|
|
página de proyectos</ulink>.</para>
|
|
|
|
<sect2 id="cygwin">
|
|
<title>Cygwin</title>
|
|
|
|
<para>Versiones de <application>Cygwin</application> anteriores a la
|
|
1.5.0 no incluyen <filename>inttypes.h</filename>. Ponga esto
|
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/contrib/inttypes.h">inttypes.h</ulink>
|
|
en <filename class="directory">/usr/include/</filename> para hacer que
|
|
<application>MPlayer</application> compile.</para>
|
|
|
|
<para>Los archivos de cabecera de DirectX han de ser extraidos a
|
|
<filename class="directory">/usr/include/</filename> o a
|
|
<filename class="directory">/usr/local/include/</filename>.</para>
|
|
|
|
<para>Las instrucciones y los archivos para hacer que SDL funcione bajo Cygwin pueden
|
|
encontrarse en el
|
|
<ulink url="http://www.libsdl.org/extras/win32/cygwin/">sitio de libsdl</ulink>.</para>
|
|
|
|
<para>Puede reproducir VCDs reproduciendo los archivos <filename>.DAT</filename> o
|
|
<filename>.MPG</filename> que Windows muestra en los VCDs. Esto funciona de la
|
|
siguiente manera (ajuste para la letra de unidad de su CD-ROM):</para>
|
|
|
|
<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen>
|
|
|
|
<screen>mplayer <replaceable>/cygdrive/d/MPEG2/AVSEQ01.MPG</replaceable></screen>
|
|
|
|
<para>Para DVDs también funciona, ajuste <option>-dvd-device</option> para la letra
|
|
de unidad de su DVD-ROM:</para>
|
|
|
|
<screen>mplayer dvd://<replaceable><título></replaceable> -dvd-device '\\.\d:'</screen>
|
|
|
|
</sect2>
|
|
|
|
|
|
<sect2 id="mingw">
|
|
<title>MinGW</title>
|
|
|
|
<para>Instalar una versión de MinGW que pueda usarse para compilar
|
|
<application>MPlayer</application> es bastante artificioso, pero ya
|
|
funciona fuera de la caja. Solo instale MinGW 3.1.0 o posterior y MSYS
|
|
1.0.9 o posterior y diga a MSYS en la postinstalación que MinGW
|
|
está instalado.</para>
|
|
|
|
<para>Si usa una versión de MinGW anterior a la 3.1.0, necesita reemplazar
|
|
<filename>/mingw/include/sys/types.h</filename> con esta
|
|
<ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/contrib/types.h">
|
|
<filename>types.h</filename></ulink>.</para>
|
|
|
|
<para>Extraiga los archivos de cabecera de DirectX a
|
|
<filename class="directory">/mingw/include/</filename>.</para>
|
|
|
|
<para>VCDs y DVDs funcionan casi como en Cygwin (ajustando la letra de la unidad de su
|
|
CD-ROM/DVD-ROM):</para>
|
|
|
|
<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen>
|
|
|
|
<screen>mplayer <replaceable>/d/MPEG2/AVSEQ01.MPG</replaceable></screen>
|
|
|
|
<screen>mplayer dvd://i<replaceable><título></replaceable> -dvd-device <replaceable>/d/</replaceable></screen>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="macos">
|
|
<title>Mac OS</title>
|
|
<para>
|
|
Solo Mac OS X 10.2 y superiores están soportados por el código en crudo
|
|
de <application>MPlayer</application>. ¡Siéntase libre para añadir soporte
|
|
para versiones más antiguas de Mac OS y envíe parches!
|
|
</para>
|
|
|
|
<para>
|
|
El GCC 3.x modificado por Apple es el preferido para compilar
|
|
<application>MPlayer</application> especialmente usando
|
|
<systemitem class="library">libavcodec</systemitem> ya que
|
|
el GCC 2.95.x modificado por Apple no soporta bien la sintaxis C99.
|
|
</para>
|
|
|
|
<para>
|
|
Solo puede obtener un GUI Aqua para <application>MPlayer</application> junto con los
|
|
binarios compilados de <application>MPlayer</application> para Mac OS X desde el
|
|
proyecto <ulink url="http://mplayerosx.sf.net/">MPlayerOSX</ulink>.
|
|
</para>
|
|
|
|
</sect1>
|
|
|
|
<sect1 id="hpux">
|
|
<title>HP UX</title>
|
|
<para>
|
|
Martin Gansser mantiene un
|
|
<ulink url="http://cloud.prohosting.com/patos/docs/mplayer_on_hpux11.htm">COMO</ulink>
|
|
de mucho valor acerca de cómo compilar <application>MPlayer</application> en HP-UX. ¡Tiene
|
|
incluso una sección de FAQ!
|
|
</para>
|
|
|
|
<para>
|
|
De todos modos, nuestro código crudo de <application>MPlayer</application> se usa para
|
|
compilar en HP-UX sin problemas.
|
|
</para>
|
|
</sect1>
|
|
|
|
<sect1 id="amiga">
|
|
<title>Amiga/MorphOS (GeedGadgets)</title>
|
|
<para>
|
|
Nicholas Det en Genesi ha hecho una gran adaptación, potente, de <application>MPlayer</application>
|
|
para MorphOS. Tristemente basado en la serie 0.90.
|
|
</para>
|
|
|
|
<para>
|
|
Obténgalo desde <ulink url="http://www.morphzone.org/">MorphZone</ulink>:
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=90">
|
|
<application>MPlayer</application> 0.91 binario</ulink>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=91">
|
|
<application>MPlayer</application> 0.91 código fuente</ulink>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=912">
|
|
<application>MEncoder</application> 0.91 binario</ulink>
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</sect1>
|
|
|
|
</chapter>
|