nix-archive-1(type directoryentry(namebinnode(type directoryentry(nameshoutnode(typeregular executablecontentsVELF4Q4 (444II 0``N,NTTStd44Ptd0=00ttQtdRtdN$$/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/ld-linux.so.2$GNUIGNU%1&)# %(+,$ ." * /- !'0,(.",/K8gUa29& |my9 TI Im/+Wsf__gmon_start__shout_syncshout_openshout_set_protocolshout_get_mountshout_initshout_get_content_formatshout_set_metashout_get_passwordshout_set_hostshout_set_passwordshout_sendshout_closeshout_set_publicshout_set_mountshout_set_portshout_shutdownshout_set_content_formatshout_set_usershout_newshout_get_errorshout_set_tls_IO_stdin_usedoptindfgetsstdinperrorfreadstrtokstrtolfopenstrlenfeofoptargstrcasecmp__xpg_basename__libc_start_mainstderrfprintfgetoptstrchrgetservbynamefclosefputcfwritestrcmpgetopt_longstrncmplibshout.so.3libgcc_s.so.1libc.so.6GLIBC_2.34GLIBC_2.1GLIBC_2.0/gnu/store/00b3rvsmf9fcw8izvmhr2x2sb7kc883k-libshout-2.4.6/lib:/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib:/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib:/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/gcc/i686-unknown-linux-gnu/11.4.0/../../..OYii dii n/-.0   $ ( , 048<@DHLPTX\`dhlptx |!"#$%&'()*+SOtЃ[5%%h%h%h% h%h %h(%h0%h8p% h@`%$hHP%(hP@%,hX0%0h` %4hh%8hp%<hx%@h%Dh%Hh%Lh%Ph%Th%Xh%\hp%`h`%dhP%hh@%lh0%ph %th%xh%|h%h%h%h%h%h %h(%h0%h8p%h@`%hHP X fffL$qUWVSQHAË 0ƅt1hqP-2QQhxVDžDžDžDžDžDžDžDžHDžDž DžDžPDžDž Dž$Dž(Dž,0Dž4Dž8ıDž<@DžDDžHɱDžLPDžTDžXұDž\`DždDžhDžlpDžtDžxDž|Dž DžDžDž Dž DžDž DžDžDžDž!DžDžDž'DžDžDžhDžDžDžDžDžDžDž PVhԲ [ H$P^ 0~ 3 Efh7T!w$ 07eY[^_]aj5h Sct S Ph5Jj5hS"GPPjSX- S Phɰ5O5  VVSPj5hڱSj5hSdRRh8P1t&hV$ V}…t wـt Hu Ƅʀ uƄPPj=VjPVt Q VWh5^ .5jjhU-G$(WW5S S Ph@5E QQPS0 S8 Ph\5Wh5e5jPPSgXZhҲ5DžDž_1PP4Wu5jjh,?=PPj=W~jP5S " S* PhD5vj5h SK  S Phn5.jPPS0=XZhW PPhWPPhWjPS2Dž=2PPS S Ph58PP5S S Pht5YPP5S^ Sf PhV5j5hS  S Ph5jj5hS?  S Ph5"j5hڱS S Php5>RR5STC SK Ph5RRh,PKPPh1jPPh5MUQQPS S Ph:5`)ƒYPRR4S{WWPSVQQPtS9PRR4Sm S S SUt,&fPVSuR S5hjVuȃ SZX5N S Ph5ZQQhS(|RRhS S Ph5Z#t: EjPRS;kW4hڲPz9SSPj ^!ļ PPhҲj1d1WVh5gS5h5CjSDž5jjh%aY S Ph5IPW"QWh5#P4 S Phh5ISh5*QWh5 S6 Phh5fffffUEt)D$,D$D$(D$,@t@̀D$ T$ \$ D$ 獴&X5 PX1Щ t2V1SRtuX[^à Rkff1^PTR$<jjQVP$ffffffffffffff$ffffff=t$tUhЃÍ&fÍ&&-t tUPh҃Ít&Í&=uUlÍvÍ&&fffffffVSà hPlu[^Í&fhSBu[^Í&hSt#h$Su 뗍[^Ít&h,Su  aY&t\VSà h4Pt@f1[^Ít&j jS=[^øÍ&vVS\$t$t;/t*5j6jh6\$t$[^ SwÍ&UWVSD$<\$4|$0t$8D$ }uhSZYh ShShڱSt|h8Stgh<SttRh@S_t=|$ Shس5)h S"tt$8\$4|$0[^_]vj:VtNjhDVtjhLVtVh5댍&Vh 5|it&[^_]Ív ht$h5Dà ht$ht5$S{7[disabledautoauto_no_plainrfc2818rfc2817tcpircaimicqhttp://https://Could not allocate shout_t oggfwdoggfwd.exeError setting genre: %s %s:%d: syntax error Error setting name: %s Error setting public: %s Error setting url: %s Error setting TLS mode: %s d:g:hm:n:pu:T:Wrong number of arguments Error setting hostname: %s Error setting port: %s Error setting password: %s Error setting mount: %s protohostportmountuserpasstls-modestation-descriptionstation-genrestation-namestation-urlstation-metaformatusagehelphttpicyroarError setting protocol: %s Error setting user: %s Error setting URL: %s %s: Missing '=' mp3webm%s: Invalid format name Error setting format: %s ,H:hP:%s: unused argument /example.ogghackmeError connecting: %s Error sending: %s Invalid format usage audiovisualtextsubtitlelightuimetadataapplicationcontrolcomplexotherunknown3d4dWarning: Mount point not starting with a slash ("/"). Warning: Invalid station metadata key (but trying to set anyway): %s Warning: URL "%s" is not absolute. This may not work as expected. Please include a protocol. E.g. "https://www.example.org/". Warning: Unusual protocol in URL "%s". This may not work as expected. Usage: %s [OPTIONS] address port password mountpoint OPTIONS: -d set stream description -g set stream genre -h show this help -m parse metadata from file -n set stream name -p make stream public -u set stream url –T {%s} set TLS mode Usage: %s [OPTIONS] OPTIONS: General options: --format set format {ogg|mp3|webm} -H , --host set host -h, --help show this help --mount set mountpoint (e.g. "/example.ogg") -P , --port set port (e.g. "http", or "8300") --pass set source password --proto set protocol (e.g. "http") --user set source user --tls-mode set TLS mode {%s} --usage set usage (e.g. "audio", or "visual,audio,subtitle") Station metadata options: --station-description set station description --station-genre set station genre --station-meta = set station meta information --station-name set station name --station-url set station URL Error setting description: %s %s:%d: "%s" is not a valid key Error parsing TLS mode: %s: Invalid protocol nameError parsing port: %s: Invalid port name Error parsing protocol: %s: Invalid protocol name Error setting meta information: %s Error setting format and usage: %s  ,Kn `jv."aaaaaaaa3disabled|auto|auto_no_plain|rfc2818|rfc2817BHOT]c f@o{ ;p X@tP 4zR| 2zR|  0F J tx?;*2$"TAC EEA HM  AAJ CEA HM  AAH CEA HGEA H[  AAE CEA HLfEC EEA HT  CAE CBBA HP DA@($SAA CWBBE HK  AAF CA Hl@AA AAC0g8E FNo b[o @j 88 (s B`` P| w  Вpp(00 00=t=NNNOOPPH 0PP))))entry(nameetcnode(type directoryentry(name ld.so.cachenode(typeregularcontentsglibc-ld.so.cache1.1DZ" z b |<e~?*k0=  L {r3PCR _ `< n 3 x A  g,Q  N# ;k  u k , 2M![a& K )O L ]! Y  ~ m/gnu/store/9awh4pi0xh18h33qh9ww6wjl75brv57h-speex-1.2.1/lib/libspeex.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libresolv.so/gnu/store/00b3rvsmf9fcw8izvmhr2x2sb7kc883k-libshout-2.4.6/lib/libshout.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_compat.so/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbis.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libssp.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libgomp.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libubsan.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libasan.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libitm.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libm.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libanl.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libquadmath.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libc_malloc_debug.so/gnu/store/qs8sxzi2k0yl827r0gf4qhg0igawxx7f-libogg-1.3.5/lib/libogg.so/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbisfile.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libpcprofile.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libBrokenLocale.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libmemusage.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_hesiod.so/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbisenc.so/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheoraenc.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libobjc.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libatomic.so/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheoradec.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_db.so/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libthread_db.so/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheora.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libcc1.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libstdc++.so/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libasan.so.6/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libm.so.6/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libc.so.6/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libstdc++.so.6/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libobjc.so.4/gnu/store/00b3rvsmf9fcw8izvmhr2x2sb7kc883k-libshout-2.4.6/lib/libshout.so.3/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbisfile.so.3/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/ld-linux.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libresolv.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_compat.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_dns.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_files.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libdl.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_hesiod.so.2/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbisenc.so.2/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnss_db.so.2/gnu/store/9awh4pi0xh18h33qh9ww6wjl75brv57h-speex-1.2.1/lib/libspeex.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/librt.so.1/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libgcc_s.so.1/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libgomp.so.1/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libubsan.so.1/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libitm.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libnsl.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libanl.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libutil.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libBrokenLocale.so.1/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheoraenc.so.1/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libatomic.so.1/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheoradec.so.1/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libthread_db.so.1/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbis.so.0/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libssp.so.0/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libquadmath.so.0/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libc_malloc_debug.so.0/gnu/store/qs8sxzi2k0yl827r0gf4qhg0igawxx7f-libogg-1.3.5/lib/libogg.so.0/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib/libpthread.so.0/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheora.so.0/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/libcc1.so.0t!/ldconfig (GNU libc) stable release version 2.39))))entry(nameincludenode(type directoryentry(nameshoutnode(type directoryentry(nameshout.hnode(typeregularcontentsE/* shout.h * * API for libshout, the streaming library for icecast * * Copyright (C) 2002-2003 the Icecast team , * Copyright (C) 2012-2022 Philipp Schafft * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public * License along with this library; if not, write to the Free * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef __LIBSHOUT_SHOUT_H__ #define __LIBSHOUT_SHOUT_H__ #include #if defined(WIN32) && !defined(__MINGW64__) && !defined(__MINGW32__) #include #endif #include /* ----------------[ Attributes ]---------------- */ /* Attributes depend on used compiler */ #if (defined(__clang__) && __clang_major__ >= 4) #define SHOUT_ATTR_F_WARN_UNUSED_RESULT __attribute__ ((warn_unused_result)) #elif __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 9) #define SHOUT_ATTR_F_DEPRECATED(msg) __attribute__ ((deprecated (msg))) #define SHOUT_ATTR_F_WARN_UNUSED_RESULT __attribute__ ((warn_unused_result)) #endif #ifndef SHOUT_ATTR_F_DEPRECATED #define SHOUT_ATTR_F_DEPRECATED(msg) #endif #ifndef SHOUT_ATTR_F_WARN_UNUSED_RESULT #define SHOUT_ATTR_F_WARN_UNUSED_RESULT #endif #ifdef __cplusplus extern "C" { #endif /* ----------------[ Constants ]---------------- */ #define SHOUTERR_SUCCESS ( 0) /* No error */ #define SHOUTERR_INSANE ( -1) /* Nonsensical arguments e.g. self being NULL */ #define SHOUTERR_NOCONNECT ( -2) /* Couldn't connect */ #define SHOUTERR_NOLOGIN ( -3) /* Login failed */ #define SHOUTERR_SOCKET ( -4) /* Socket error */ #define SHOUTERR_MALLOC ( -5) /* Out of memory */ #define SHOUTERR_METADATA ( -6) #define SHOUTERR_CONNECTED ( -7) /* Cannot set parameter while connected */ #define SHOUTERR_UNCONNECTED ( -8) /* Not connected */ #define SHOUTERR_UNSUPPORTED ( -9) /* This libshout doesn't support the requested option */ #define SHOUTERR_BUSY (-10) /* Resource is busy, try again (later) */ #define SHOUTERR_NOTLS (-11) /* TLS requested but not supported by peer */ #define SHOUTERR_TLSBADCERT (-12) /* TLS connection can not be established because of bad certificate */ #define SHOUTERR_RETRY (-13) /* Retry last operation. */ #define SHOUT_FORMAT_OGG ( 0) /* Ogg */ #define SHOUT_FORMAT_MP3 ( 1) /* MP3 */ #define SHOUT_FORMAT_WEBM ( 2) /* WebM */ #define SHOUT_FORMAT_WEBMAUDIO ( 3) /* WebM, audio only, obsolete. Only used by shout_set_format() */ #define SHOUT_FORMAT_MATROSKA ( 4) /* Matroska */ #define SHOUT_FORMAT_TEXT ( 5) /* Text, must be in UTF-8, usage must be SHOUT_USAGE_TEXT. */ /* backward-compatibility alias */ #define SHOUT_FORMAT_VORBIS SHOUT_FORMAT_OGG /* Usages */ #define SHOUT_USAGE_AUDIO (0x0001U) /* Audio substreams*/ #define SHOUT_USAGE_VISUAL (0x0002U) /* Picture/Video substreams (most often combined with SHOUT_USAGE_AUDIO) */ #define SHOUT_USAGE_TEXT (0x0004U) /* Text substreams that are not subtitles */ #define SHOUT_USAGE_SUBTITLE (0x0008U) /* Subtitle substreams */ #define SHOUT_USAGE_LIGHT (0x0010U) /* Light control substreams */ #define SHOUT_USAGE_UI (0x0020U) /* User interface data, such as DVD menus or buttons */ #define SHOUT_USAGE_METADATA (0x0040U) /* Substreams that include metadata for the stream */ #define SHOUT_USAGE_APPLICATION (0x0080U) /* Application specific data substreams */ #define SHOUT_USAGE_CONTROL (0x0100U) /* Substreams that control the infrastructure */ #define SHOUT_USAGE_COMPLEX (0x0200U) /* Substreams that are themself a mixture of other types */ #define SHOUT_USAGE_OTHER (0x0400U) /* Substream of types not listed here */ #define SHOUT_USAGE_UNKNOWN (0x0800U) /* The stream MAY contain additional substreams of unknown nature */ #define SHOUT_USAGE_3D (0x1000U) /* The Stream contains information for 3D playback */ #define SHOUT_USAGE_4D (0x2000U) /* The Stream contains information for 4D/XD playback */ #define SHOUT_PROTOCOL_HTTP ( 0) #define SHOUT_PROTOCOL_XAUDIOCAST ( 1) /* Deprecated. May be removed in future versions. Do not use. */ #define SHOUT_PROTOCOL_ICY ( 2) #define SHOUT_PROTOCOL_ROARAUDIO ( 3) /* Possible TLS modes */ #define SHOUT_TLS_DISABLED ( 0) /* Do not use TLS at all */ #define SHOUT_TLS_AUTO ( 1) /* Autodetect which TLS mode to use if any */ #define SHOUT_TLS_AUTO_NO_PLAIN ( 2) /* Like SHOUT_TLS_AUTO_NO_PLAIN but does not allow plain connections */ #define SHOUT_TLS_RFC2818 ( 11) /* Use TLS for transport layer like HTTPS [RFC2818] does. */ #define SHOUT_TLS_RFC2817 ( 12) /* Use TLS via HTTP Upgrade:-header [RFC2817]. */ /* Possible values for blocking */ #define SHOUT_BLOCKING_DEFAULT (255) /* Use the default blocking setting. */ #define SHOUT_BLOCKING_FULL ( 0) /* Block in all I/O related functions */ #define SHOUT_BLOCKING_NONE ( 1) /* Do not block in I/O related functions */ #define SHOUT_AI_BITRATE "bitrate" #define SHOUT_AI_SAMPLERATE "samplerate" #define SHOUT_AI_CHANNELS "channels" #define SHOUT_AI_QUALITY "quality" #define SHOUT_META_NAME "name" #define SHOUT_META_URL "url" #define SHOUT_META_GENRE "genre" #define SHOUT_META_DESCRIPTION "description" #define SHOUT_META_IRC "irc" #define SHOUT_META_AIM "aim" #define SHOUT_META_ICQ "icq" #define SHOUT_CALLBACK_PASS ( 1) /* Pass the event to the next handler */ typedef enum { SHOUT_CONTROL__MIN = 0, SHOUT_CONTROL_GET_SERVER_CERTIFICATE_AS_PEM, SHOUT_CONTROL_GET_SERVER_CERTIFICATE_CHAIN_AS_PEM, SHOUT_CONTROL__MAX = 32767 } shout_control_t; typedef enum { SHOUT_EVENT__MIN = 0, SHOUT_EVENT_TLS_CHECK_PEER_CERTIFICATE, SHOUT_EVENT__MAX = 32767 } shout_event_t; typedef struct shout shout_t; typedef struct _util_dict shout_metadata_t; typedef int (*shout_callback_t)(shout_t *shout, shout_event_t event, void *userdata, va_list ap); /* ----------------[ Generic ]---------------- */ /* initializes the shout library. Must be called before anything else */ void shout_init(void); /* shuts down the shout library, deallocating any global storage. Don't call * anything afterwards */ void shout_shutdown(void); /* returns a static version string. Non-null parameters will be set to the * value of the library major, minor, and patch levels, respectively */ const char *shout_version(int *major, int *minor, int *patch); /* Allocates and sets up a new shout_t. Returns NULL if it can't get enough * memory. The returns shout_t must be disposed of with shout_free. */ shout_t *shout_new(void) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Free all memory allocated by a shout_t */ void shout_free(shout_t *self); /* Returns a statically allocated string describing the last shout error * to occur. Only valid until the next libshout call on this shout_t */ const char *shout_get_error(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Return the error code (e.g. SHOUTERR_SOCKET) for this shout instance */ int shout_get_errno(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* returns SHOUTERR_CONNECTED or SHOUTERR_UNCONNECTED */ int shout_get_connected(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* ----------------[ Configuration ]---------------- */ /* Parameter manipulation functions. libshout makes copies of all parameters, * the caller may free its copies after giving them to libshout. May return * SHOUTERR_MALLOC */ /* Connection parameters */ int shout_set_host(shout_t *self, const char *host); const char *shout_get_host(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; int shout_set_port(shout_t *self, unsigned short port); unsigned short shout_get_port(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; int shout_set_agent(shout_t *self, const char *agent); const char *shout_get_agent(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* See SHOUT_TLS_* above */ int shout_set_tls(shout_t *self, int mode); int shout_get_tls(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set the directory for CA certs. Default: operating system's default */ int shout_set_ca_directory(shout_t *self, const char *directory); const char *shout_get_ca_directory(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set a CA cert file for checking. If you use a self signed server cert * you can pass this cert using this function for verification. * Default: operating system's default */ int shout_set_ca_file(shout_t *self, const char *file); const char *shout_get_ca_file(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set list of allowed ciphers. * This function should only be used in case of using an old libshout * after some attacks got known. Watch the icecast mailinglist for * known problems. * DO NOT SET THIS TO ANY FIXED VALUE. IF YOU USE THIS FUNCTION * EXPOSE IT TO THE USER. OTHERWISE YOU WILL HARM SECURITY. * Default: internal list of secure ciphers. */ int shout_set_allowed_ciphers(shout_t *self, const char *ciphers); const char *shout_get_allowed_ciphers(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Authentication parameters */ int shout_set_user(shout_t *self, const char *username); const char *shout_get_user(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; int shout_set_password(shout_t *, const char *password); const char *shout_get_password(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set a client certificate for TLS connections. * This must be in PEM format with both cert and private key in the same file. * Default: none. */ int shout_set_client_certificate(shout_t *self, const char *certificate); const char *shout_get_client_certificate(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Mount parameters */ int shout_set_mount(shout_t *self, const char *mount); const char *shout_get_mount(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Other parameters */ /* takes a SHOUT_AI_xxxx argument */ int shout_set_audio_info(shout_t *self, const char *name, const char *value); const char *shout_get_audio_info(shout_t *self, const char *name) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* takes a SHOUT_META_xxxx argument */ int shout_set_meta(shout_t *self, const char *name, const char *value); const char *shout_get_meta(shout_t *self, const char *name) SHOUT_ATTR_F_WARN_UNUSED_RESULT; int shout_set_public(shout_t *self, unsigned int make_public); unsigned int shout_get_public(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set the content language. * Values as per RFC5646 Section 2.1. * This lists the target audiance language(s), not the language of songs * (unless the station has a focus on songs in a specific language). * The value of NULL is allowed if the content language is not known or is expected to change. * * Examples: * A German station with moderations and news in German and Gamern and international songs * would generally set this to "de-DE". * A similar station in Switzerland would set this to "de-CH". * A station with content in Portuguese, and Klingon should set this to "pt, tlh". */ int shout_set_content_language(shout_t *self, const char *content_language); const char *shout_get_content_language(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Set the format of the content to send. * * format is one of SHOUT_FORMAT_xxxx. * * usage is a bit vector composed of SHOUT_USAGE_xxxx. * * codecs is NULL as of this version. Future versions will also support NULL. */ int shout_set_content_format(shout_t *self, unsigned int format, unsigned int usage, const char *codecs); int shout_get_content_format(shout_t *self, unsigned int *format, unsigned int *usage, const char **codecs); /* takes a SHOUT_PROTOCOL_xxxxx argument */ int shout_set_protocol(shout_t *self, unsigned int protocol); unsigned int shout_get_protocol(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Instructs libshout to use nonblocking I/O. Must be called before * shout_open (no switching back and forth midstream at the moment). * nonblocking is one of SHOUT_BLOCKING_xxx. */ int shout_set_nonblocking(shout_t* self, unsigned int nonblocking); unsigned int shout_get_nonblocking(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* ----------------[ Actions ]---------------- */ /* Opens a connection to the server. All parameters must already be set */ int shout_open(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Closes a connection to the server */ int shout_close(shout_t *self); /* Send data to the server, parsing it for format specific timing info */ int shout_send(shout_t *self, const unsigned char *data, size_t len) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Send unparsed data to the server. Do not use this unless you know * what you are doing. * Returns the number of bytes written, or < 0 on error. */ ssize_t shout_send_raw(shout_t *self, const unsigned char *data, size_t len) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* return the number of bytes currently on the write queue (only makes sense in * nonblocking mode). */ ssize_t shout_queuelen(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Puts caller to sleep until it is time to send more data to the server */ void shout_sync(shout_t *self); /* Amount of time in ms caller should wait before sending again */ int shout_delay(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* ----------------[ MP3/AAC ONLY ]---------------- */ /* Functions in this block are for use with MP3, and AAC streams only */ /* Sets MP3 metadata. * Returns one of SHOUTERR_XXX. * * Note: This function is for MP3 streams only. * * The metadata passed must have been added as UTF-8 using shout_metadata_add(). */ int shout_set_metadata_utf8(shout_t *self, shout_metadata_t *metadata) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Allocates a new metadata structure. Must be freed by shout_metadata_free. */ shout_metadata_t *shout_metadata_new(void) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* Free resources allocated by shout_metadata_t */ void shout_metadata_free(shout_metadata_t *self); /* Add a parameter to the metadata structure. * Returns: * SHOUTERR_SUCCESS on success * SHOUTERR_INSANE if self isn't a valid shout_metadata_t* or name is null * SHOUTERR_MALLOC if memory can't be allocated */ int shout_metadata_add(shout_metadata_t *self, const char *name, const char *value) SHOUT_ATTR_F_WARN_UNUSED_RESULT; /* ----------------[ Advanced ]---------------- */ /* Advanced. Do not use. */ int shout_control(shout_t *self, shout_control_t control, ...) SHOUT_ATTR_F_WARN_UNUSED_RESULT; int shout_set_callback(shout_t *self, shout_callback_t callback, void *userdata); /* ----------------[ Obsolete ]---------------- */ /* Those functions are obsolete and MUST NOT be used in newer software. * They may be removed with any future version. */ int shout_set_name(shout_t *self, const char *name) SHOUT_ATTR_F_DEPRECATED("use shout_set_meta() with SHOUT_META_NAME"); // obsolete const char *shout_get_name(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("use shout_get_meta() with SHOUT_META_NAME"); // obsolete int shout_set_url(shout_t *self, const char *url) SHOUT_ATTR_F_DEPRECATED("use shout_set_meta() with SHOUT_META_URL"); // obsolete const char *shout_get_url(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("use shout_get_meta() with SHOUT_META_URL"); // obsolete int shout_set_genre(shout_t *self, const char *genre) SHOUT_ATTR_F_DEPRECATED("use shout_set_meta() with SHOUT_META_GENRE"); // obsolete const char *shout_get_genre(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("use shout_get_meta() with SHOUT_META_GENRE"); // obsolete int shout_set_description(shout_t *self, const char *description) SHOUT_ATTR_F_DEPRECATED("use shout_set_meta() with SHOUT_META_DESCRIPTION"); // obsolete const char *shout_get_description(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("use shout_get_meta() with SHOUT_META_DESCRIPTION"); // obsolete /* takes a SHOUT_FORMAT_xxxx argument */ int shout_set_format(shout_t *self, unsigned int format) SHOUT_ATTR_F_DEPRECATED("Use shout_set_content_format()"); // obsolete unsigned int shout_get_format(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("use shout_get_content_format()"); // obsolete int shout_set_dumpfile(shout_t *self, const char *dumpfile) SHOUT_ATTR_F_DEPRECATED("Only useful with SHOUT_PROTOCOL_XAUDIOCAST which is deprecated."); // obsolete const char *shout_get_dumpfile(shout_t *self) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("Only useful with SHOUT_PROTOCOL_XAUDIOCAST which is deprecated."); // obsolete int shout_set_metadata(shout_t *self, shout_metadata_t *metadata) SHOUT_ATTR_F_WARN_UNUSED_RESULT SHOUT_ATTR_F_DEPRECATED("Use shout_set_metadata_utf8()"); #ifdef __cplusplus } #endif /* --- Compiled features --- */ #define SHOUT_THREADSAFE 1 #define SHOUT_TLS 0 #endif /* __LIBSHOUT_SHOUT_H__ */ ))))))entry(namelibnode(type directoryentry(nameckportnode(type directoryentry(namedbnode(type directoryentry(namelibshout.ckportnode(typeregularcontentsl #ckport(1) database for libshout -- A Cross-platform library for media streaming: !NAME: libshout !TYPE: func !TARGET: libshout3 # Global libshout management: shout_init ok shout_shutdown ok shout_version ok # shout_t* object management: shout_free ok shout_new ok shout_get_error ok shout_get_errno ok shout_get_connected ok # Connection parameters: shout_set_host ok shout_get_host ok shout_set_port ok shout_get_port ok shout_set_agent ok shout_get_agent ok shout_set_protocol ok shout_get_protocol ok shout_set_nonblocking ok shout_get_nonblocking ok # TLS (Transport Layer Security): # See also 'Authentication parameters'. shout_set_tls ok shout_get_tls ok shout_set_ca_directory ok shout_get_ca_directory ok shout_set_ca_file ok shout_get_ca_file ok shout_set_allowed_ciphers maybe This is for advanced applications only. If used this setting MUST be exposed to the user. Otherwise you will harm security. shout_get_allowed_ciphers ok # Authentication parameters: shout_set_user ok shout_get_user ok shout_set_password ok shout_get_password ok shout_set_client_certificate ok shout_get_client_certificate ok # Source parameters: shout_set_format ok shout_get_format ok shout_set_mount ok shout_get_mount ok # Other parameters: shout_set_dumpfile ok shout_get_dumpfile ok shout_set_audio_info ok shout_get_audio_info ok shout_set_meta ok shout_get_meta ok shout_set_public ok shout_get_public ok # Sending data: shout_open ok shout_close ok shout_send ok shout_send_raw maybe Do not use this unless you know what you are doing. shout_queuelen likely Only useful in non-blocking mode. shout_sync ok shout_delay ok # MP3 Metadata: shout_set_metadata maybe Only useful for MP3 streams. shout_metadata_new maybe Only useful for MP3 streams. shout_metadata_free maybe Only useful for MP3 streams. shout_metadata_add maybe Only useful for MP3 streams. # Obsolete functions: shout_set_name legacy Replaced by shout_set_meta(). shout_get_name legacy Replaced by shout_get_meta(). shout_set_url legacy Replaced by shout_set_meta(). shout_get_url legacy Replaced by shout_get_meta(). shout_set_genre legacy Replaced by shout_set_meta(). shout_get_genre legacy Replaced by shout_get_meta(). shout_set_description legacy Replaced by shout_set_meta(). shout_get_description legacy Replaced by shout_get_meta(). #ll ))))))entry(name libshout.anode(typeregularcontents2:! / 0 0 0 0 6590 ` OOOOOOOOOOOO[&[&[&[&[&jjjjjjjjjjj:::::&&&&&&&&&&&&&&&&&&&&&j""N!%.7nAHRHRHRHRHRTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT{J{J{J&&&&&&&&&&&&&&                              shout_cb_connection_callbackshout_initshout_shutdownshout_freeshout_openshout_closeshout_sendshout_send_rawshout_queuelenshout_syncshout_delayshout_versionshout_get_errnoshout_get_errorshout_get_connectedshout_set_hostshout_get_hostshout_set_portshout_get_portshout_set_passwordshout_get_passwordshout_set_mountshout_get_mountshout_set_agentshout_get_agentshout_set_content_languageshout_get_content_languageshout_set_usershout_get_usershout_set_audio_infoshout_get_audio_infoshout_set_metashout_newshout_get_metashout_set_publicshout_get_publicshout_get_mimetype_from_selfshout_set_content_formatshout_get_content_formatshout_set_protocolshout_get_protocolshout_set_nonblockingshout_get_nonblockingshout_set_tlsshout_get_tlsshout_set_ca_directoryshout_get_ca_directoryshout_set_ca_fileshout_get_ca_fileshout_set_allowed_ciphersshout_get_allowed_ciphersshout_set_client_certificateshout_get_client_certificateshout_controlshout_set_callbackshout_set_formatshout_get_formatshout_set_dumpfileshout_get_dumpfileshout_set_nameshout_get_nameshout_set_urlshout_get_urlshout_set_genreshout_get_genreshout_set_descriptionshout_get_descriptionshout_metadata_newshout_metadata_freeshout_metadata_addshout_set_metadatashout_set_metadata_utf8_shout_util_strdup_shout_util_read_header_shout_util_base64_encode_shout_util_url_encode_shout_util_url_encode_resource_shout_util_dict_new_shout_util_dict_free_shout_util_dict_get_shout_util_dict_set_shout_util_dict_urlencode_shout_util_dict_nextshout_queue_datashout_queue_strshout_queue_printfshout_queue_freeshout_queue_collectshout_connection_newshout_connection_refshout_connection_unrefshout_connection__readshout_connection__writeshout_connection__recoverableshout_connection_select_tlsmodeshout_connection_set_nonblockingshout_connection_set_wait_timeoutshout_connection_get_wait_timeout_happenedshout_connection_connectshout_connection_itershout_connection_disconnectshout_connection_sendshout_connection_get_sendqshout_connection_starttlsshout_connection_set_errorshout_connection_get_errorshout_connection_transfer_errorshout_connection_controlshout_connection_set_callbackshout_http_implshout_get_xaudiocast_responseshout_create_xaudiocast_requestshout_parse_xaudiocast_responseshout_xaudiocast_implshout_create_icy_requestshout_icy_implshout_roaraudio_implshout_open_oggshout_open_webmshout_open_mp3shout_open_text_shout_open_opus_shout_open_vorbis_shout_open_theora_shout_open_speex_shout_resolver_getname__x86.get_pc_thunk.bx_shout_resolver_getip_shout_resolver_initialize_shout_resolver_shutdown_shout_sock_initialize__x86.get_pc_thunk.bx_shout_sock_shutdown_shout_sock_get_localip_shout_sock_error_shout_sock_set_error_shout_sock_recoverable_shout_sock_stalled_shout_sock_valid_socketsock_active_shout_sock_set_blocking_shout_sock_set_nolinger_shout_sock_set_nodelay_shout_sock_set_keepalive_shout_sock_close_shout_sock_writev_shout_sock_write_bytes_shout_sock_write_string_shout_sock_write_fmt_shout_sock_write_shout_sock_read_bytes_shout_sock_read_line_shout_sock_connected_shout_sock_connect_non_blocking_shout_sock_connect_wto_bind_shout_sock_connect_wto_shout_sock_get_server_socket_shout_sock_set_send_buffer_shout_sock_listen_shout_sock_accept_shout_timing_get_time__x86.get_pc_thunk.bx_shout_timing_sleep__x86.get_pc_thunk.di__x86.get_pc_thunk.si__x86.get_pc_thunk.bx_shout_avl_node_new_shout_avl_tree_new_shout_avl_tree_free_shout_avl_insert_shout_avl_get_by_index_shout_avl_get_by_key_shout_avl_delete_shout_avl_iterate_inorder_shout_avl_get_first_shout_avl_get_prev_shout_avl_get_next_shout_avl_iterate_index_range_shout_avl_get_span_by_key_shout_avl_get_span_by_two_keys_shout_avl_get_item_by_key_most_shout_avl_get_item_by_key_least_shout_avl_verify_shout_avl_print_tree_shout_avl_tree_rlock_shout_avl_tree_wlock_shout_avl_tree_unlock__copy_buffer__x86.get_pc_thunk.bxhttpp_encoding_meta_freehttpp_encoding_meta_newhttpp_encoding_meta_appendhttpp_encoding_addrefhttpp_encoding_releasehttpp_encoding_newhttpp_encoding_readhttpp_encoding_eofhttpp_encoding_get_metahttpp_encoding_writehttpp_encoding_pendinghttpp_encoding_append_meta__x86.get_pc_thunk.bx_shout_httpp_request_info__x86.get_pc_thunk.cx_shout_httpp_create_parserhttpp_deletevar_shout_httpp_getvar_shout_httpp_parse_postdata_shout_httpp_setvar_shout_httpp_initialize_shout_httpp_parse_response_shout_httpp_set_query_param_shout_httpp_get_query_param_shout_httpp_set_post_param_shout_httpp_get_post_paramhttpp_get_param_varhttpp_get_any_varhttpp_free_any_keyhttpp_get_any_key_shout_httpp_get_param_shout_httpp_addref_shout_httpp_releasehttpp_str_to_method_shout_httpp_parse__x86.get_pc_thunk.bx_shout_thread_create_c_shout_thread_mutex_create_shout_thread_initialize_shout_thread_mutex_destroy_shout_thread_shutdown_shout_thread_mutex_lock_c_shout_thread_mutex_unlock_c_shout_thread_cond_create_c_shout_thread_cond_destroy_shout_thread_cond_signal_c_shout_thread_cond_broadcast_c_shout_thread_cond_timedwait_c_shout_thread_cond_wait_c_shout_thread_rwlock_create_c_shout_thread_rwlock_destroy_shout_thread_rwlock_rlock_c_shout_thread_rwlock_wlock_c_shout_thread_rwlock_unlock_c_shout_thread_sleep_shout_thread_self_shout_thread_exit_c_shout_thread_rename_shout_thread_library_lock_shout_thread_library_unlock_shout_thread_jointhread_spin_createthread_spin_destroythread_spin_lockthread_spin_unlock// 208 ` proto_xaudiocast.o/ proto_roaraudio.o/ libicenet_la-resolver.o/ libicenet_la-sock.o/ libicetiming_la-timing.o/ libiceavl_la-avl.o/ libicehttpp_la-encoding.o/ libicehttpp_la-httpp.o/ libicethread_la-thread.o/ shout.o/ 0 0 0 644 13456 ` ELF14(VSÃ@Xt2SPƃDCXxs|t|[^Ít&S wRtyS@RPSCXShPCX@ZYSPCXnD뫍t&Cdy{oC$S$CDCLCTC@CHSPTt&E SC|t& SC|t& SC|t& SC|C|&t&$$EÍ&Ít&>EÍ&t It1tɁeDÍ&t pt1tuTDÍ1Ít&d DÍv T$B8tD$Pr/ύ|<$C$tI>/Eу VRhWPC| 1[^_ÐC|fC|֍&t&D$t@$Ít&1Í&S\$tRCXu=C t P t$ C t)C|1[ÍC|C|ҍ&D$t@ Ít&1Í&VS\$t$t6&v< t<,t߃Av HЀ v<-uGBuԋCt P VCtJC|1[^Í&C|[^ÍCt˃ P뽸C|뱍D$t@Ít&1Í&S\$tRCXu=C0t P t$ C0t)C|1[ÍC|C|ҍ&D$t@0Ít&1Í&S\$tt$t$sC|[ø&&D$T$tT$@D$t&1Í&WVS\$|$t$CXu{Wu6t&Hv0< vC|[^_Í&tV< t< tuVWs(C|[^_C|뮸맍&vSuhjÅ-HX t P hSXC|C0t P hC0CXC|C t P hC C|CtUC(tIhhSu/C@CCC [Ít&C| S1[Ívލ&fD$T$tT$@(D$t&1Í&D$T$t,w'HXuP4@|1Ív@|ÍvfD$t@4Ít&1Í&D$P@1VSL$ t$\$tLQXu7D$uډtq1YA|[^A|fA|߸؍&t&VSD$ \$L$T$t(tp3tXt@|1[^ø&t&D$T$t9HXuw P @|1Ív@|Ív@|øÍt&D$t@ Ít&1Í&T$D$t t6u2HXuP\1Ít&11&v@|ÍvÍ&vD$t@\Ít&1Í&D$t|$w 1Í@|øÍt&1Í&D$t@|Ívf1Í&D$t@|Ívf1Í&D$t@|Ívf1Í&D$t@|Ívf1Í&T$tD$B|øÍ&t&D$tT$@|P8T$ P<1øH04`X  d (5F\audio/oggvideo/oggapplication/oggtext/plain; charset=utf-8audio/mpegaudio/webmvideo/x-matroskavideo/webmaudio/x-matroskavideo/x-matroska-3d2.4.6Invalid shout_tUnknown error/%s%slocalhostsourcelibshout/2.4.6no namenameResource is busyNot connectedOut of memorySocket errorLogin failedCouldn't connectNonsensical argumentsNo errorPlease retry current operation.TLS connection can not be established because of bad certificateTLS requested but not supported by peerThis libshout doesn't support the requested optionCannot set parameter while connectedGCC: (GNU) 11.4.0GNUzR| AA EJAA H\  CAE ZDAA HNAEA PAAA KA HOA HOA HOA H(1CPCBA FC F HU &SRP&SRp(AC`A HJA HJA HJA HJA HJA HJA HJA HG AF CA PACC AA 4AC\A Oh AG JA ]HAA Ay  AAB RAC HF  AAJ TDnAA CYDAA HI  CAG CAC HE  AAJ $%CKAC HC A PuAA C W  AAB \$E(A,A0H Z(A,A0H C AAt0ZAA AAC Y AA AAD J$E(C,A0H C EA AAB CCA AA08>Ch E 4PsACXA HCD HR AI  4;H0 4\P sACYA HCD HS AG  T AA AiA HCA ^ZA A$E(A,A0OC  AAB  4 sACYA HCD HS AG LP T`p AA CaA HCA HS  AAH J  FAG JA HP 4p sACYA HCD HS AG  0 1ACKDDC HF AA LP #L` AA A[  AAH eAAC HD  AAA @wAC\EB H^A HCE HfA HCE HgA HCE HmEEA He AE KA JC CD 8#L>`0tP$`eAA | AA $EAA z AA  KpV(+<@PPdpx$ @&-BU_} &*P&9NjYoPzn%.8uCW0Zc0q8>Ps;0 P s  *18A Q saP qp P p s  1P # (@w29N#]>n0P`eE KpV  +.@<PSpj|$ @&shout_connection_itershout_xaudiocast_implshout_connection_newshout_cb_connection_callbackshout_connection_set_callbackshout_connection_connectshout_roaraudio_implshout_http_implshout_icy_implshout_open_webmshout_open_mp3shout_open_oggshout_open_textshout_init_shout_sock_initializeshout_shutdown_shout_sock_shutdownshout_free_shout_util_dict_freeshout_openshout_closeshout_connection_unrefshout_send_shout_timing_get_timeshout_send_rawshout_connection_sendshout_connection_transfer_errorshout_queuelenshout_connection_get_sendq__udivdi3shout_sync_shout_timing_sleepshout_delayshout_versionshout_get_errnoshout_get_errorshout_get_connectedshout_set_host_shout_util_strdupshout_get_hostshout_set_portshout_get_portshout_set_passwordshout_get_passwordshout_set_mountstrlenmallocsnprintfshout_get_mountshout_set_agentshout_get_agentshout_set_content_languageshout_get_content_languageshout_set_usershout_get_usershout_set_audio_info_shout_util_dict_setshout_get_audio_info_shout_util_dict_getshout_set_metashout_newcalloc_shout_util_dict_newshout_get_metashout_set_publicshout_get_publicshout_get_mimetype_from_selfshout_set_content_formatshout_get_content_formatshout_set_protocolshout_get_protocolshout_set_nonblockingshout_get_nonblockingshout_set_tlsshout_get_tlsshout_set_ca_directoryshout_get_ca_directoryshout_set_ca_fileshout_get_ca_fileshout_set_allowed_ciphersshout_get_allowed_ciphersshout_set_client_certificateshout_get_client_certificateshout_controlshout_set_callbackOax ~    5Me&EJau!4:Qdj+5 X!#$&\l$n}-o ~ - * 4@ 5R W d k 6  -  -,   -+ ??FOUhD---8EDESX^B;h AA  $(,@DHLPTX\`dhlpt ,H$8L`PdPd<Pdx,@Th| .symtab.strtab.shstrtab.rel.text.data.bss.rel.rodata.rodata.str1.1.rodata.str1.4.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@f @+%+4x 0 @.<28eK2Z0cs(  @/  %T1legacy.o/ 0 0 0 644 2832 ` ELF4( D$T$HXt=wtOjjjP Ít&uKjjjP Í&jjjP Ít&jhjP f@| @|늸&T$t BtÍ&zDÍv1Ít&S\$tKCXu=C,t P t$ C,t"C|1[ÍC|ٍt&D$t@,Ít&1Í&t$ht$Í&ht$Í&t&t$ht$Í&ht$Í&t&t$h t$Í&h t$Í&t&t$ht$Í&ht$nameurlgenredescriptionGCC: (GNU) 11.4.0GNUzR| lChBBA HC E GBBA HC I BBBA HC F BEBA HC C O A +4lACYA HCD HS AG `CDED H CED H,CDED HLCED HlCDED H CED H@CDED H`CED H++<lOTg`z @`shout_set_formatshout_set_content_formatshout_get_formatshout_set_dumpfilefree_shout_util_strdupshout_get_dumpfileshout_set_nameshout_set_metashout_get_nameshout_get_metashout_set_urlshout_get_urlshout_set_genreshout_get_genreshout_set_descriptionshout_get_description1Mh     $- HQ dm 0Pp.symtab.strtab.shstrtab.rel.text.data.bss.rodata.str1.1.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@u @T %+02?0HX(o k @` @  4dyicy.o/ 0 0 0 644 3908 ` ELF 4(UWVS<Éj&Rƅ11TrC t5< VC|<[^_]f s$D$ sŅ V,$D$Zs$T$T:!‰$T$T$ Vt$Uh(RPU]t$|$<D$0D$4LD$( V D$P5SŅShsXXZjUE Y^SU&SUƃtt U<$<[^_]Í&f s$Ņ_<҃&ET$ D$V,$T$T:‰$T$T$S VUt$ RPU|$<$D$0&f sŅ V,$T$T$T$ VUh4RPU|$<D$,D$0D$4LKC|: WC| VC| t$4$C| UXσ Uf&t&D$tD$&Í&D$T$L$ ttL$ T$D$vfT$D$1T$D$mode=updinfo&charset=UTF-8&mount=%s&%smode=updinfo&pass=%s&mount=%s&%smode=updinfo&mount=%s&%s/admin.cgi/admin/metadatamode=updinfo&pass=%s&%sGETGCC: (GNU) 11.4.0GNUzR| AA AACPSXF\A`HPv\A`TPC CA AAC C\C`LPK\C`HPM\A`R\C``PQXA\D`AdEhAlApH\A`F\D`aPG\A`HTEXF\A`HPMTAXE\C`F\AXB\A`M\AXA\A`HPJXA\A`HPO\A`PPE AA AAJ C\C`HPl\E`hPQ\A`AdDhAlApH\A`YPQ\C`HPM\A`bPQ\A`AdEhAlApH\A`iPc\F`OPH\A`TPH\D`\PH \A`F\B C\A`. H3:AJZo$9Mc.v _shout_util_dict_urlencode_shout_util_url_encodestrlenmallocsnprintfshout_http_implshout_connection_newshout_cb_connection_callbackshout_connection_set_callbackshout_connection_set_nonblockingshout_connection_connectshout_connection_itershout_connection_unrefshout_metadata_new_shout_util_dict_newshout_metadata_free_shout_util_dict_freeshout_metadata_add_shout_util_dict_setshout_set_metadatashout_set_metadata_utf8"f  &6FT Z p x   *@a js Da| .symtab.strtab.shstrtab.rel.text.data.bss.rodata.str1.4.rodata.str1.1.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@2 @  %r+r02tI?2PN0 W g (~Hz @4 0 L  d util.o/ 0 0 0 644 5464 ` ELF4(WVSt$|$1Bt<uBu Qtvt&t:Ӏ<uڃ%@P@u[^_Í jt1ۍ&&D$tD$&1Ít&U1WVSD$8\$4|$p uS9vOjjWt$<t:L$ t +v̀|+ uƀ|+ u+[^_]Í1[^_]Í&&UWVS(t$n9ÉF0?Q Qt*w=A=ƈQ)uD$ [^_]Í&<Q=nL$ D$ [^_]Ít&h@t$?Í&t&h@t$Í&t&j jVS\$t=vދ[t PFt P Vuƃ[^VS\$t$t%&tPVt[u[^f[[^Ít&WVS\$t$1ËthVPt+C߅uރj jÅ_tS s t$$Ct[1[^_f VuЅu#(&Ӄ VuG S맸렍UWVS\$0D$4D$ 1& xWƅUhWP,$C#h@PŅ! V,$D$ZYTRT$VT$U1hD$)RP,$[th@PoŅ PD$ W^ZT$ L$ T$PWL$T$ Ut$hRPUC[1O[^_]à V1[^_]Åt W1[^_]à U4$묃 U<$1딃 1U넍VS\$t$L$ t2@u%t&@tt@[^Ít&1[^%s%c%s=%sABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/0123456789abcdefGCC: (GNU) 11.4.0GNUzR| @AA ABD H\  CAG CB H`\tAC AAC0b4B8A [Í&fJ`@tCD$1[tJD$ع[j&v A jjqqq [Ít&A qՍ&UWVS˃\D$ l$T$v; t{j,Sƅ)߃?wLWSUD< XZhMt$u;hSUu~D$ H`\;u\[^_]Íxh^t$uhhnUuD$ H`먍 SFt&hZUu[D$ H`hhvt$Nh~U-D$ H`vhUuD$ H`hUuD$ H`h$UD$ H`fUWVS4\$LD$$D$$PsDY{u3t$HS~C1C ,[^_]Í&jS,[^_]Ít& ƍCDP]XjWXD$Lp$Ņ7PVt$$W,$D$D$@hWt MhWt ^hWt vK`hW j jPXZhWD$thPD$hWtFhPD$ZYDD$D$hT$RDD$D$8dHc?eVchWt6T$T$j jPXZVT$RD$P.dc t$(<$CwsCc@L$VCCCX&p#/dc t$(<$jS,[^_]Í{ WYt$(C1C vhWCl$tHCCC,[^_]Í WYt$(^_Y S^_t$HS랍 SXZt$HS%s:%sAuthorization: Basic %s PUT %s HTTP/1.1 SOURCE %s HTTP/1.0 Host: %s:%i Content-Type: %s User-Agent: %s Content-Language: %s Expect: 100-continue ice-public: %d ice-%s: %s ice-audio-info: %s Prefer: return=minimal GETPOST%s %s HTTP/1.1 %s %s?%s HTTP/1.1 OPTIONSTLS/1.0, HTTP/1.1*/admin/!POKEAllowSOURCEPUTAccept-EncodingchunkedUpgradeTLS/1.0allow__errorcode__version1.1connectionkeep-alivecontent-lengthcloseupgradeaccept-encodingContent-Length: 0 Connection: Keep-Alive User-Agent: %s (Mozilla compatible) Connection: Upgrade Upgrade: %s Content-Type: application/x-www-form-urlencoded Content-Length: %llu  GCC: (GNU) 11.4.0GNUzR| TAA Az  FAD A  CAC CBA HF AAtIA CCHAAAHHAAHJ FA AAA F CA AAD `HpAA AAC a,A0^ I,A0A4E8ATZj   5;Ts'-_e5DJw   ( G f m v D e q z         " D M ` f        6 g             * 0 > T Z g  p v       !  !GMi  "( 0">g"q " #!$5#A$ x`t4.symtab.strtab.shstrtab.rel.text.rel.data.bss.rodata.str1.1.rodata.str1.4.rel.rodata.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@M @| ()% @%/42C2V@R @%^0Pgcwd( @%@ ` &/0 0 0 0 644 3796 ` ELF 4(T$BHt#JDt f9t 8 u1Ð uԸUWVS|$(l$,h"W^w$øDtBPwh*UtB VY[jU [^_]Í&jU܍&h8W Ph=UuhSW DPhWUhhlW DPhrU6ShUw4hUQQhWtlRPhUG,tWPhUPPhU VXZjU1덍&t&VS\$$D$ KHtD$PsD CDPt$tFhVt1 VK`1CC [^Í& VC`x= C`SXZt$(SCC[^Ít&jS[^Í&jSj0http://www.icecast.org/icecastbitrateSOURCE %s %s namex-audiocast-name: %s urlx-audiocast-url: %s genrex-audiocast-genre: %s x-audiocast-bitrate: %s x-audiocast-public: %i descriptionx-audiocast-description: %s x-audiocast-dumpfile: %s OKBroadcasting with the icecast streaming media server!GCC: (GNU) 11.4.0GNUzR| @00@AA AAC(M,A0F,C0T E$E(E,A0H G,A0F,A(B,A0H H AA AAH C(B,A0H M(E,A0H$A(E,A0H G(E,A0H$K(E,A0H K(E,A0H$K(E,A0H K$A(E,A0H K$C(E,A0H I$A(E,A0H E$A(E,A0H P$A(E,A0H I$A(E,A0H K,A0F,A(B,A0H d AA C V(E,C0H K,D0L G(E,A0H G,A0O S  AAI C,A0K G,I0F,A(D,A0H V  AAE C(B,A0H H  AAH C(B,A0H @@?Tt  )Bshout_get_xaudiocast_responseshout_create_xaudiocast_requestshout_get_audio_info_shout_util_url_encode_resourceshout_queue_printfshout_connection_set_errorshout_get_metashout_queue_strshout_parse_xaudiocast_responseshout_queue_collectshout_queue_freestrstrshout_connection_disconnectshout_connection_connectshout_xaudiocast_implPVck}        *0 8CI ]c y       D[nt   '  4h.symtab.strtab.shstrtab.rel.text.rel.data.bss.rodata.str1.1.rodata.str1.4.rel.rodata.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@8 @ )x% @4 /|42|C26VR @< ^0gw( @T   P \Xl proto_icy.o/ 0 0 0 644 2800 ` ELF 4(UWVS \$$t$ C`x:hSjS1 [^_]Í&fh#V vh+ǸSD:h/V Ph4ShAV DPhEShQV DPhUShaV DPheShqV DPhuSuXv4hSu@hV DPhSuWhbt&jS [^_]0http://www.icecast.org/icecastbitrate%s nameicy-name:%s urlicy-url:%s ircicy-irc:%s aimicy-aim:%s icqicy-icq:%s icy-pub:%i genreicy-genre:%s icy-br:%s !POKE icy-name:libshout server poke request GCC: (GNU) 11.4.0GNUzR| 4AA AAC R(E,A0H K(B,A0H E AA AAJ C (E,A0H$C(E,J0K K(E,A0H$A(E,A0H K(E,A0H$K(E,A0H K(J,A0H$F(E,A0H K(E,A0H$F(E,A0H K(E,A0H$F(E,A0H G$C(E,A0H G(E,A0H$K(E,A0H G$A(E,I C(B,A0H HAA AA-H]l{shout_create_icy_requestshout_queue_printfshout_connection_set_errorshout_get_audio_infoshout_get_metashout_icy_implshout_get_xaudiocast_responseshout_parse_xaudiocast_response 6TZenw    *0CI W]ou   .symtab.strtab.shstrtab.rel.text.rel.data.bss.rodata.str1.1.rodata.str1.4.rel.rodata.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@ @(8)% @`/ 42 C2.VR @h^0g#w$(LP @  l/20 0 0 0 644 3336 ` ELF 4(UWVS$\$||~))rD$ 1D579rD$ ڋ kv v3T$ T$u,[^_]Ãjt$P,[^_]f,[^_]Ívjt$P,[^_]fUWVSL\$dC?tcu~D$`tvD$(1D$,fL$4j D$0PCLPt&uCC |$`ft3fD$*ft$(f t$lfjSL[^_]Ít&D$`D$(D$,D$0DD$4 D$8D$<tD$sLD$&fl$*j D$&PV jD$0PVXZjS1L[^_]Ít& PD$hD$,$L$T$ tύ@xQRPL$ptNwFD$({LfD$0fD$4j D$0PW UVW4$I VXZVVjSpGCC: (GNU) 11.4.0GNUzR| hAA AAC8QAA AAC@ AA AAA CHBLDPH@H AA AAC C FA AAD CHBLDPH@HAA AAdAA AAC`x dGhElDpI plDpJ`MhBlApH`H AA AAF HdRhElApHdBhElApFlAhBlApH`E AA AAE C lAp[`QdLhAlApL`YdVhElApHdAhAlApR C lApFlAhE AdAhBlApH`!&AHXipw~shout_queue_collectshout_queue_freeshout_connection_set_errorgetpidshout_get_agentshout_queue_datastrlenmallocmemcpyshout_roaraudio_impl4KWj1?W     ?    h.symtab.strtab.shstrtab.rel.text.rel.data.bss.rel.rodata.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@ @ )% @  /84 @  @0I+Y,(pTTl @    zformat_ogg.o/ 0 0 0 644 3040 ` ELF 4(tTWVSpt8󋶀|t t҃ S$uG[^_Ít&Í&SD$X` S\$ [&UWVS4D$H\$Px`|$SW St$LPXZSWt$&vVt$ VD$ x uhjÅ1 S,t( VZYPSXZVSYXVSՃuǃhD$@Px@|@tpT$ lBZt$t$t$L;D$t$ t$ t$L;D$D$@@|t&X@ u뜍vt V;Pu⋋xmVSXZVSxD$P|$Ppl@x9Wt4WtOx)iG {L$@A|,[^_]ËL$@1A|,[^_]øٸҍ&VS t$j$jt+ F`PC 1FdFh`[^F|GCC: (GNU) 11.4.0GNUzR| <YEC A\F ECA PL AA$\`(ACQA LA CAA AACHPLAPH@KDAHDLAPFLAHALAPH@QHALDPH@LLAPH@YHELBPH@VLDPO@GLAPFLAHALAPFLAHALAPFLAHALAPE@~DDHDLDPH@MDDHDLDPH@|LAPH@YHALAPFLAHALAP`@u AA AAA L AA AAA <RAA CFB HGF LS  AAA &6=L]jqRogg_stream_clearfreeogg_sync_clearogg_sync_buffermemcpyogg_sync_wroteogg_sync_pageoutogg_page_boscalloc_shout_open_vorbisogg_page_serialnoogg_stream_initogg_stream_pageinshout_send_rawshout_open_oggogg_sync_init_shout_open_theora_shout_open_opus_shout_open_speex5=w  & : HO_ hq/ R    `.symtab.strtab.shstrtab.rel.text.data.bss.rel.rodata.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@2 @ %r+r4t0 @ <0EU(lh @ `   vformat_webm.o/ 0 0 0 644 3524 ` ELF 4( UWVSL$ 9Éָt&u u[^_]Ít&|91Ճ$!͉T$Sэ,Ãt9v1Ƌ$׋T$$T$9ủ؋ $T$\$ 11 t'3{[^_]Í&v1[^_]ÍC[^_]Í&t&D$@`t D$t&Í&UWVSl$$D$<x`@|G4D$4D$ t$<$+G$)9G؋D$GSRP_G_t$L\$ D$l$+l$T$9T$A?$p|GuNjOG 1l$t$9s L$͉D$1T$@|uI+GT$)9Í 2G؋D$ L$GSQP__9wO_ +L$\$oO ȉ_ l$ouGGD$ fT$D$L$Ht$ D$HT$D$LD$$ƉD$PD$TÅUL$P=D$PT$8T$ÉT$T$TD$(D$H։T$,T$L!كbL$L$(L$0\$\$, щ\$4 t$ 9# :#9g uoD$(L$$L$8Pj4119l$ |$Ήߍ&v1ڃ9u|$l$ G$W(G,W0t&T$0L$4Љ R$T$ P|q&fÅD$ ͍&fht$$9G$G@|$B|t& ! PD$$L$XD$8 oBL$$D$8A9zT$1҉D$D$T$ÉA1G$W(G,W0t&gS t.uC t"5fI G@BG &D$T$GGW g vt$ g9s$ W5fI t멍&f! uD$T$D$0T$4D$1+D$G$oX|D$<9$W0G WG, Gg,jhRP$Ft؉Vx|[^_]D$(L$$L$8P4119vӋl$ |$Ήߍ&1ڃ9u|$l$ GW 6UD$ T$PR11G1ۅu&$X|rD$ P4P$9Gu $GX|$X|딋D$0T$4D$T$t&S\$h4 jtCd0ChC`1[C|GCC: (GNU) 11.4.0GNUzR| |AA AAC(r FA AAF  AA AAK C CA AAG PAA AA0{AA AACcDCA`DCAKEDGHECAWAA AAAmAKAHAAGGH(tAACIB HZ AA &.A>free__udivdi3memcpyshout_send_rawmemmoveshout_open_webmcallocju c  x.symtab.strtab.shstrtab.rel.text.data.bss.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@ @ P %1+10019DID(`l\ @0    EP jformat_mp3.o/ 0 0 0 644 3628 ` ELF 4(D$@`D$UWVS$T$8׋X`1{ \$tU;$CC|$.$D$. fD$, l$,<$l$.$T$AtQxC D$$D$(@\$ $GD$$9$sa&GD$ D$$)Dž~W$P$D$9<$$|$G;$GD$$8D8 ‹$D8 ‹$D8 ӉT$T$8t ÉƉT$@ L$ L$<ىÃl$\ L$Dƃ l$`Ń\$Ht$t$Pl$dl$ L$Lt$TƃD$h1t$XD$lR؃@ @@\$pL$tt$xt>1iT$D$D$  T$ D$|uus$ |$G;$`$9s ;$$D$(t P1$G|Č[^_]Ív$t$|$$\$ $l$)uM9rX|$.4$$ $$T$. fT$,$ l$,<$l$. $\$$JtZxǃEvf+$$NjD$x $Qt&|$$)|$ \$ 1~!SD$,$P$ƋD$(t P9t&|$+$G $?t& $PD$8à t$FFCFCF$$PN$$FL$0$t&G\$$D$ $S$Z9u$)|$G$vD$( P$9v ;$kD$$^t&S\$jjtCdChC`1[øD}"V]>+@@ @` @` 08@P`p@ (08@P`p@ 08@P`p (08@P`p (08@P`p 08@P`p (08@P`p (08@P`p$tIGCC: (GNU) 11.4.0GNUzR| 0|AF AAFAHGLAHR AA AAD ALGHMAHyHNO^IAgxAH(7ACFB HZ AA #72freeshout_send_rawmallocmemcpyshout_open_mp3callocmKWdI   4.symtab.strtab.shstrtab.rel.text.data.bss.rodata.rodata.cst4.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@ @ x %+0  8E0N^(uq @<     9T format_text.o/ 0 0 0 644 1152 ` ELFx4( Í&&VS\$t$Vt$S9tC|[^Í&C|[^Í&&D$@`@d@h1GCC: (GNU) 11.4.0GNUzR| @0AAA CIDA HN  FAH F AAt``shout_send_rawshout_open_text$nu 4x.symtab.strtab.shstrtab.rel.text.data.bss.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@| @ %+009I(`\ @ |@    jcodec_opus.o/ 0 0 0 644 2268 ` ELF4( &t&UWVSD$1[^_]Ít&ƉӋVωD$T$hD$PuVЉuF Gtn N  ɉON O n  ͉o N O n O nN ɉONOu;GGfG %19NONOHD.D/ 9t9uvUWVS<|$PtD$ vD$PW\$~ߋt$tf>Opt.`<`@ tQt-yV?lt$ ^ ډ\$)ʅ~9O)Љ @BjhRPlp&鸀QV<1[^_]Í<% .&Q&fVS,t$8h$jteÍD$PVT$D$t,ǃ 1tdžxPdž|$[^à SOpusHeadGCC: (GNU) 11.4.0GNUzR| H0=AA AAC0O AA AAF I8R__udivdi3ogg_stream_packetoutfree_shout_open_speexcallocspeex_packet_to_header9c +7 t.symtab.strtab.shstrtab.rel.text.data.bss.comment.note.GNU-stack.note.gnu.property.rel.eh_frame@L @X %+009I(`\ @   @Uj/39 0 0 0 644 3068 ` ELF| 4(UWVSP|$dl$$D$ t$hUWjL$$11rD$D$(D$ PUjWDžD$t7jjjt$xVppDƉD$t$(D$L[^_]ÐUWj ct$lWVD$xDL[^_]Ít&L1[^_]ÍUWVSP|$dl$$t$hUWj~*t$lWVD$xDL[^_]ÍUWj 1҉1&T rD$D$(PUjWDžuMD$tjjjt$xVppDƉD$t$(D$ L[^_]ÍL1[^_]ÍSt[fǃPhP$[Í&Su[f Pǃ[resolver.c$GCC: (GNU) 11.4.0GNUzR|  AA AANdUhAlBpH`pdAhBlApH`UdBhBlBpDtAxC|CHlOpL`C AA AAB CdAhAlBpH`KdDhAlApL`H CA AAF CCA AAAA AANdMhAlBpH`GdDhAlApL`J AA AAG CdAhAlBpH`jdAhBlApH`QdBhBlBpDtAxC|CHlOpH`G AA AAG CCA AA8YANM AC CQKA TCA0pFANM AC CG WCA 4JT`lyYpF .LC0_shout_resolver_getname__x86.get_pc_thunk.bx_GLOBAL_OFFSET_TABLE_inet_ptongetaddrinfogetnameinfofreeaddrinfostrncpy_shout_resolver_getip_shout_resolver_initialize_shout_thread_mutex_createsethostent_shout_resolver_shutdown_shout_thread_mutex_destroyendhostent +g     3H p    ! 5 ; F Q]rx     .symtab.strtab.shstrtab.group.rel.text.data.bss.rodata.str1.1.text.__x86.get_pc_thunk.bx.comment.note.GNU-stack.note.gnu.property.rel.eh_frame4 &@" @ ,272 Fb0k{(D$ @( h@ /64 0 0 0 644 9860 ` ELF$4(S[Í&S[Í&WVS$h|$ Wu($VWt[^_Ít&1[^_Í&vS[Ít&ST$[ÐL$ 1yøÍt&Ut1sÍ&D$Ut ÍvrÍvfS$D$D$PD$Pjjt$<8[Ít&SjjD$Pt$,1t [Í P[Í&vWVS|$t$ Wt*w% VjW[^_Í&f썴&fS$D$D$jD$Pj jt$<8[Í&S$D$jD$Pjjt$<8[S$D$jD$Pj jt$<8[St$[ÍvS t$t$t$[Í&t&SD$T$ttjRPt$[Ít&VSt$ V PVt$[^Í&vUWVS $$$(Vhl$ U=~d hUDžtw$(VUP~PW$,ƃ W [^_]Ít&PU$, [^_]Ít&뿍&fSD$Pt$t$[Í&SD$T$ttjRPt$[Ít&1[ÐUWVST$8|$0D$~}D$4tujjl$UWx_L$ t_uP1t&;t$8},u= t D$4 0jjUWL$ u΃uT$42[^_]Ð1[^_]1fU1WVS$$D$$xD$l$D$ T$1 FI| FUjRjP tGtT D$PD$PjjV u $t* P& PҁĜ[^_]Í&W11VS0t$ rD$t$DPj|$WD$PVWt$\ t$ut&vtav vvDžx߃jPF vPWy%rv WvuD$t P0[^_ÿt&U11WVSlD$$t$  rD$($Pj|$$WD$ PVW$ t$sD$@D$ &v vvDž~jP$tiL$ 11 rFD$DFD$HF D$LD$Pt$j$D$PpRWFvPWtM PtUWtڃtR WvD$t P t$l[^_]Ívx̃jW뼍t& W륿랿뺍&&St$jt$t$[Í&fUWVS$t$@ 1t$$ rD$ %D$(RPj t$"VD$PD$4PV$ l$ |$D$u uuƅxj jWjjPD$0jWjj)VEuPVx t$[^_]Ív Vmi t$ÍvSjD$$Pjjt$,([Í&WVS|$t$ Wt NVW[^_Í&UWVS$$t@$t5 Vt%D$ l$D$PUVƃuĜ[^_]Í&jjj$Wt$$U u& V4$Ĝ[^_]Ít&P$W%u%dunknown$GCC: (GNU) 11.4.0GNUzR| ANHA< ANHAd\@fAA AQLEGGGAAHJ C AAE FE AAANJAANNA30.,,`;AN,M0E4B8Bw    0 @`0`L|8$`d<LL .symtab.strtab.shstrtab.group.rel.text.data.bss.rodata.str1.1.text.__x86.get_pc_thunk.bx.comment.note.GNU-stack.note.gnu.property.rel.eh_frame4 &@ " @@8 , 2 72 F b0 k { (D X  @x"  h#/85 0 0 0 644 1612 ` ELF4(WVSjD$Pl$ƋD$jhRP0[^_Í&S(D$ Pjht$Lt$LD$$iD$D$(D$$PjjjjH[Ë$GCC: (GNU) 11.4.0GNUzR| @HAA AN(B,E0X4E8BË@txS1tS9u[^_Í&[1^_P3P0$t&St$Pht$[ÍvUWVS tft[W8PtRtLuj|~%1uj G9 [^_]ÍvW~1uj 9w [^_]UWVS42D$,D$P׋VD$t L$l$D$D$F ƒRt$PP2T$(V ҋT$tF2jjPVtD$ L$l$D$ D$+,[^_]ËFu2j 뷍&UWVS,D$\$9C ؋[\$aT$9B TBD$)D$9P ‹@D$ D$ 9P H…9Q qʅ9V ~ti9W udotK9E uF]t-9C u(CtډL$&L$fS؅t9C t؋Ut 9E tGt9W tFt 9V zAʅt 9Q PT$ BtD$ D$ 9P T$BtD$D$9P D$PtT$T$9B D$PtT$\$9C r,[^_]Sjt"T$@@P T$@[Í&t&VSj4ƅtIjjtED$FF D$FFPFjTP[^Í& V1[^fVSt$Fu5t P FP4$[^Í&fT$@bUWVS,l$@|$DEpD$t$ 6WuU ~-F"Pt$ƉD$ Ǎ&Fƒ ‹FVuVWÅFEt$6WuU VNVT$9u5t&FFv9t6WuU ڃfv9ut$6WuU |Fq݉l$919t>,[^_]Ít&&fVWÅFT$RՃl$99l$2D$L$ 9HD$XD$1҉C ,[^_]ÃPWkM1҉AЃE,[^_]Ít&O1 ȋL$ AЃE,[^_]ËL$ 1҃A,[^_]ÃthL$\$ IKtY L$\$  D$YK ACL$ AL$AˉD$AX\$|$ [_t{ \$|$ ){ ȉ_ 랋L$YCAtH D$L$ CX CAtH Ct$ s)‹D$^  T$PKFD$Ѝȃ ЉCV99ŋD$ PD$@D$L$ACCYCAtH D$L$ CX CAtH Kt$ ȉs^ Ѝȃ ЉCN)‰ȃ ‰VC?L$ ) ЉAD$@D$MG >D$PD$Hu&&vRtB9wsR)uÍD$ 1Í&WVS|$t$Xt t&3VwW xt#[u[^_Ív[u덴&T$ [^_Ít&UWVSt$0\$4h&fuSvV xMtۍvEMƒ ‰UuۉЃ ЉEP9t%m 9EuE  ȉE9uۃ[^_]Í&Eƒ ЉEPt&9tʼnm 9EuE  ȉEٍ&fUÉȉم.q&ӋRuEUEƒ ‰UStC B k 9]UD$D$8tL$ 3T$HL$L$ St$0t$t&M UӃC9E}GD$D$ ;D$1Ш^GO Eth D$o} ‰ T$ WPUU9inAh 9Et0&L$t$0+&ЉL$t$0ƒD‰En[^_]Ít&9iUt&x|$|$1׃ZXSK PtB SCX Utj S|$k] <S S})׍} lj؉US_9~_UUPP9iAxH }to |$hE ) ډUP^ ӉXU) ډU1.&vuGO Eth D$o} ЍЃG뛉xH }to |$hE ) ډUPfGPH Wtz PxG Utj XT$hE ) T$ W]PӋP ډP_9) ډWUUD$/U P ^ I&t&D$T$L$ xu1Ív@>&&D$@ttt&‹@uÍt&1t&D$Pt t&ыRuÍt&t9Pt‹@ u1ɉÍ&Í&t&D$Pt t&ыRuÍt&t9Pt‹@ u1ɉÍ&Í&t&UWVS D$ L$,l$09Hre+t$(xfG9v G9ws*)U7VT$4u# WDžuك 1[^_]Í& [^_]Í&t&UWVS,t$@T$DL$D$u#D$T$LT$H,1[^_]Í&f P|$,Ņt:u4t& UŅttut$LvV tЃ t$l$,tm|$ 1L$7t$LvV L$u WDžt0m9NsƋ|$ D$H8D$L,1[^_]Í&f|$ ֍&UWVS0t$Dl$LUt$LvV ~ D$Dl$DŋT$DL$L$lj|D$  WNjD$tKl$H|$D7uWvV u! UŋD$(D$(tuˋl$HD$  PNjD$u58v7UvV ue WNjD$,D$,t9FsˋT$LL$ T$P,1[^_]Í&fD$ D$|D$ÍD$뷍&vUWVS l$ |$(t$$EXtYt&3VuU t5x[u [^_]Ív[uɃ? [^_]Ít& [^_]ø&UWVS l$ |$(t$$EXtYt&3VuU t5x[u? [^_]Í&[uŃ [^_]Ë [^_]ø&WVSD$Pu [1^_Ít&0~9s uCtCޅt9s t@[1^_Í&vSD$$T$ D$D$D$ DJtL$RD[Í&0j jP[Í&S PhD$P[ÍvS PhD$P[ÍvS PhD$P[invalid rank at node %ld %p+-[%c %s %03d]-| avl.c \-/$Ë4$Ë<$GCC: (GNU) 11.4.0GNUzR| 47AC CYAB EL AA`T@AA AAE0Z4C8A8)<=Yy11T1\"G9wڍv FPL$D$0AG 7)1ҋD$ l$(1T$L$$L$<\<"4D$ D$T$ uljȋl$(T$D$L$$D1<"t<;i9UD1<"u9?T1\9&G<"tLT$$<2;Jl$(L$$T$D$$Pt:&fft$bt$,D$`L$HD$CCCCHt$, j|$ D$lpD$p@@@@HD$n D$lpD$p\$p@@@D$HCH0 BT$ Pt$D$,T$F3 )ՅD$ fD$vT$L$t/t(t&v‹@ u 1Í&1øÍ&&D$t1øÍ&t&VSt$.t [^f v XvFt PF t PF,t PF8t P V1҃[^ús&WVS|$jLjƅtM@DPWt5PWu>F@F[^_ÍF0F[^_Í& V1UWVSL$0|$4l$81u [^_]fq A(L$0 Q$t$D$T$UPRVW 9tŋL$0A~V )t$Lt$LUWQЃ tƉ)t Rt$t$t$$P On&v t$Lt$LUWQЃ t묍t&:SD$T$ L$t.X$9X(u@Dtt L$[t&1[Ít&[ø[Í&vD$tP @ Ív1t&UWVS t$ |$,F8t&V@+V"9uR u WD$ *l$t$t&v tFtFtE; }RT$ PT$RWFt="}fEFnt,1L"u \L z;Fr"v ofv Et$ D$p@Yt$$^t$ƋD$T$d,ҍE}E WL$pA8 L$`A<y@L$| Qt$(RWP$p8t$ t$lVD$p h8fUYt$D$ L[^_]fT$ PT$-f Rt$(RWP$p8t$ t$lVD$ph8 fED$ L[^_]à t$$D$ t$$D$D$  PSD$tt$P[ø%llxidentitychunked%lx%s%s $GCC: (GNU) 11.4.0GNUzR|  +Aa B F @0+Aa B FTd`AC AAN $C(A,A0J N AA AAD C,F0L D`AA AkA HJA HCA HE CAhpAA AAN(J,B0H M,A0H M,A0H J,A0H F CA AAA C,A0J 0pAA AAN`@hJlApH`OdDhHlDpI` AA AAH CdMhDlDpI`R AA AAI o AA AAE hHlBpY`plApL`MdAhAlApO`UlDpP`ddHhGlOpH`BlApL`UdPhAlApL`ClApL`HlApL`alCpL`wlBpL`UlGpL`llGpi`NlHpP` A t AA NY  CAC CC FC KGA HJA HJA HJA HCA HE  CAA hD AA ARBB HONA HGGA HY  AAG U  AAI CA J AA AAN0e CA AAC MB tO9s; t3 t9T&vJ uB9r鍴&f9v   t[^_]1t&SD$ 0D$ 0[Í&t&WVS|$ 7Gt#1&G 49ww w<$[^_Í&UWVƍBS$PjD$L1P>J<%tG<#$[^_]<+Ѹ B9v>J<%uGD$9s~|>OЉ Oa<wXGD$ D$ yЉL$ȉ vyxa<w$|$WD$ |$g& t$ $$[^_]Í&0GЉD$ st&|$0뚍&GɉD$ St&|$7w $&t&UWVS,D$D$L$D$D$ T$T$RPVT$PuTl$tNuJ WEY^PuM|$EY]<,[^_]Ít&1T$j jT$8@T$PvT$thNFy~|$tGL$[[^_Ít&&fUWVS |$$D$(j jƅtsjjFŅtn WYt$4FE]XWt$,t7PVD$,p XZVD$,p  [^_]Í݃ Vߍ&UWVS |$$l$ t5fG1t#&G47U9ww u̓ [^_]Ít&UWVS,D$L$D$\$~gjf} 1|$W\$ 1ۉu-t&uD9t}7<:u9u䐃D$D$9D$u,[^_]Í9ڍ&v9t7< t9~D$ t4\$T$T$ËD$ &v PuWt$t$(\$ _&&UWVS$$ FPŅt}VWPD$ D5D$}t$ D$4$t7 111vt u@lj19t> u9u UĜ1[^_]Ít&t݃RT$P$ j jT$R-cwk$P$ PP$$L$T$u,$Ĝ[^_]Ít&VP$v&fT$D$L$ tt @t&Í&&ST$$D$D$D$T$T$RPD$,pu$t Pt @[Ð1[Í&fT$D$L$ tt @t&Í&&ST$$D$D$D$T$T$RPD$,pu$t Pt @[Ð1[Í&fUWVS|$4D$l$D$|$t$VUD$j?VŅt_VP$ UP$EU$T$}$@t T$ V$A$t*j/l$ Uƅt}t xu-v W1Ĝ[^_]Í&$1UP$ VP$$@t t w+PP$$@MPP$$L$T$<$댃끃seWI;-& t$$Abcontent-type__errorcode__errormessage__uriNONE__req_typeGETPOSTPUTHEADOPTIONSDELETETRACECONNECTSOURCEPLAYSTATS__rawuri__queryargs__protocol__versionapplication/x-www-form-urlencoded $Ë$GCC: (GNU) 11.4.0GNUzR| 8AC AA{ C AAA $X%ANFF HADhAA ARB KTC KHC PF AAd0AC AFN8A/B4G9K?PEXK_QeWm]tcyiou{seWI>3 -?FMT[&u fpRo@g[1E aq ! g` ! g   `E.CWpn@`y^.L385.LC0.LC1.LC2.LC4.LC5.LC6.LC3.LC7.LC8.LC9.LC10.LC11.LC12.LC13.LC14.LC15.LC16.LC17.LC18.LC19.LC20.LC21.L397.L396.L395.L394.L393.L392.L391.L390.L389.L388.L386__x86.get_pc_thunk.bx_GLOBAL_OFFSET_TABLE_strcmpcalloc_shout_avl_get_by_keyrealloc_shout_avl_delete_shout_avl_insertmallocmemcpystrlenstrdup_shout_httpp_request_info__x86.get_pc_thunk.cx_shout_httpp_create_parser_shout_avl_tree_newhttpp_deletevar_shout_httpp_getvar_shout_httpp_parse_postdatastrcasecmp_shout_httpp_setvar_shout_httpp_initialize__ctype_tolower_loc_shout_httpp_parse_response__isoc23_strtol_shout_httpp_set_query_param_shout_httpp_get_query_param_shout_httpp_set_post_param_shout_httpp_get_post_paramhttpp_get_param_varhttpp_get_any_varhttpp_free_any_keyhttpp_get_any_key_shout_avl_get_first_shout_avl_get_next_shout_httpp_get_param_shout_httpp_addref_shout_httpp_release_shout_avl_tree_freehttpp_str_to_method_shout_httpp_parsestrchr' ()' (****<'B (M+H*' (,%*:-v+- ./ /!*)*8*F*P*m's (01{' (235 ( '  ( +<7I7V7r'x ( .' (,H'N ([ b9i q;' (++ 33.9> L.[/z*' (<' (2 2 > <% '+ (S 0g 1 2 *  < @2 F <O V c < * < ' (, , ' ( , ' (? , , ' (,h'n (**' (+IX3vJ-=GVGu'{ (,,h'n (* NNN*'  ( ;8 ?;Z a;| ; ; ; ; ; %;< C;Z a;' (012dOQ < <23!QE*o < <   < <"*8 C N \ j x     O       ! " #$ $( %, & \4$0D T<t   8   .symtab.strtab.shstrtab.group.rel.text.data.bss.rodata.str1.1.rodata.str1.4.rel.rodata.text.__x86.get_pc_thunk.cx.text.__x86.get_pc_thunk.bx.comment.note.GNU-stack.note.gnu.property.rel.eh_frame45<'&P" @l-,.2.72.F2"Yl U @3` al}p0t(  @3p$ ' )4/182 0 0 0 644 10732 ` ELF'4( T$ L$9Ít&VSt$F t PFt P V[^fUWVS$t$MU}L$T$VXZj VYXjVXZj VYXjVXZjV jVj4$GYXW04$XZjj,$T$L$$ыOuĜ1[^_]Í& V PW04$1Ĝ[^_]Í&fUWVSTjjƅtCjjDžt l$(Uy+ W V1L[^_]Í&D$p F$F T$$8T$H$8Xt$lF$wFD$tD$xZYhUGXZjUL$|uRpWPFUPt U& UL[^_]Í&vjUF뗍&fSjt$[ÐWVSVhP VhPXZjP$lj0Ƌ8FP$8F F$F$FYXVWXt$ VXZjVY_jVXZjVY_j VXZjV jVjǃ4Đ[^_ÐSt$[ÍvS4t[Ív P$X ZP0ǃ0[Í&St$[ÍvSt$[ÍvVS t$jFPXZjV[^ÐVSt$V4$[^Ít&SD$P[Í&&SD$P[Í&&VMbS L$0t$,)‰T$ii@BT$V D$ PFVP4$$[^Í&fVSt$VXFZVP4$[^Í&t&Sjt$[ÐSt$[ÍvSt$[ÍvSt$[ÍvSt$[ÍvUCWVS$L$8l$T$i@B)iL$ U|$ Wt9+&vD$D$D$D$ UWt>tڃ[^_]fUWVS  W0t. Ptv(t9ut- Pu 1W [^_]Ít& W [^_]Í&vWVSt Ƌ@u t$t& W PV0<$ t$t&VSƋ@t P t$F[^ÐSP[SP[WVS|$(D$Pw4$ PW04$ [^_Í&t&Sjt$[ÍSt$[ÍvSt$[Í&St$[thread.cmain.cMain Thread$GCC: (GNU) 11.4.0GNUzR| @0 NAA NNA HJA HCA H FAtpAA AAQ]FABAFABAFABAFABAFABAHBAHVAAFNABB`J CA AAH CAHGAFPHAA AAlwAA AANhBlBpH`IhBlBpH`IlEpH`GlApH`ClApJ`C CA AAH GlJpxlDpelAhElApIlAhBlApL`KdAhDlApH`GlApH`PlApH`E AA AAK ChBlApO`$DANBD HAl0AA AQMEAHGEAFGBAmAAAFEFABAFABAFABAFABAFABAHBABUA AA DPAND HA<hpcANL AD CG TGAF HMA AND HA AND HA8 /AA NFD FABA H AA(,P+AA NE S AA X!ANH HA |!ANH HA4gAF N,m0H$E(D,A0P AA4P4AA NE FDAA P AA$ANBD HA 8AND HA \AND HA AND HA AND HAL0AF AAN8f $@:@ sB~CB   EF*Edj oDH   H D    ! ' 2 8 A G T Z o t M|       O  R   T2 8 D V  PP 4xpHpHl0\<`<` 4Lp.symtab.strtab.shstrtab.group.rel.text.data.bss.rodata.str1.1.rel.text.unlikely.text.__x86.get_pc_thunk.bx.comment.note.GNU-stack.note.gnu.property.rel.eh_frame4&@M " @H, 2 <72 J F @D%Y u0 ~  ( | @T% tp l&))entry(name libshout.lanode(typeregular executablecontents# libshout.la - a libtool library file # Generated by libtool (GNU libtool) 2.4.6 Debian-2.4.6-9 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='libshout.so.3' # Names of this library. library_names='libshout.so.3.2.0 libshout.so.3 libshout.so' # The name of the static archive. old_library='libshout.a' # Linker flags that cannot go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -L/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib -L/gnu/store/qs8sxzi2k0yl827r0gf4qhg0igawxx7f-libogg-1.3.5/lib -L/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib -L/gnu/store/9awh4pi0xh18h33qh9ww6wjl75brv57h-speex-1.2.1/lib /gnu/store/9awh4pi0xh18h33qh9ww6wjl75brv57h-speex-1.2.1/lib/libspeex.la /gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib/libtheora.la /gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib/libvorbis.la -lm /gnu/store/qs8sxzi2k0yl827r0gf4qhg0igawxx7f-libogg-1.3.5/lib/libogg.la' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libshout. current=5 age=2 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=no # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/gnu/store/00b3rvsmf9fcw8izvmhr2x2sb7kc883k-libshout-2.4.6/lib' ))entry(name libshout.sonode(typesymlinktargetlibshout.so.3.2.0))entry(name libshout.so.3node(typesymlinktargetlibshout.so.3.2.0))entry(namelibshout.so.3.2.0node(typeregular executablecontentsELF4`4 ((R(R```,,@@@<{<{HHHx  ((Std((PtdNNN QtdRtdHHHfP<)Z" @=dWb q`( ;Ec{ QkL48F]<c $]mO%1e5NH-wn2YASp2)ou_i6F 9P+!VzJt >I#,d^gVK7'O_GMf,W3ly.\5~ja0R(eJ[7G" 4sS[ 3|;#DZ!?CY6TXHUE0BQB\hUL%x8?`X-/:@KNRT> 1a'.^M&brA+9 D v}*=*&I:C$/r@ 2HHOb@ X&^ $8h aL "!@! dF`@@ $@4M@@ x8@Q11ш G0@ &!"@f1U" !" @(!P"0r `#@,#H P!PH `b @A`@@ !(P`D@ rstuvx{|   "%')*+-/0134579:<>?@ACDGHJKOPQSTUWZ[]^_cde1r,w wA zCw EŻfvk(Ux 5 br N.[rSZEm{wfY;AT ;k m+ ~|ͷ.L#cN Tp L% Yčo˥S f],@P)=]!WƔB?*;ƽC4U)i֪JRlʩ֏ I-(Fi6 Q+oXck&[dLYum iw~m0J!C``4~D5z|M tTQ 4.ΠǞJuAt&a/ĈCED0L:[4ÖH -Ȋmk f5?yۭ;W+ G|cqWa]|ioZPno蔍i!-~*׻FOVc@[m~seMȌ8bz]Y[ ٗlMyZWr ,RU-#uns~5W qZW>y3I},[/ kQڛm(Jũȱ/9ܭ MTڏ(")   l ;  &U eg q8~W x  fk  F"_) O R dx9 Bd  [  T ( Q |F  r${ [  LG d y @ , Dv;  T ) G ;@ @y x @W  Й( ( ! $ R`Q ^p ^ ps  ' , 5+ * }P $( Pg j3 /~ @4c P? y0s2 H ( G6 A`6 `g \x2 $`  6  X@3 K P 8 И y6  64 y Ap! !P> p@ S@ pW  40 ~K px - 4 @U =` 3F `( Lf uf $g Д x @ [ 0( r0p- P~E P 9   @ @ 5! E C  d-   ( o p P ! f%  * 7 pE p, g`{ J0U ^pw = ! p 4/ (   p . @ o }  @I BT  @(  4 K@& ? UoU m ) {6 H P `7 ]g u{ $  | z> _ ` Kv P\ r `q R 4 } 5V = " $ 0 8? +/6 Q9*  ( o@ r0  % ?  y Z(  ,) =$   k  }7 pt> @Y  ^ `}> s  ; 08l p$ t Y&  ` ` Xh qw 2 -v; P`p- }u `v   f [  `1w }p : 0z R @ : P' ( 1- j v0| 7 P$  = {7  1 9U m `3 8  P 'E -  S }9 0 t  ( a+ ,|  R *F pH  & @  @" 4rn z @D Ђ P _ <v 5g t6 P  e'A G! z oP+ ( p L@0 V @ @ ^ 6 9( tj  +  \P5! V y  __gmon_start___ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalizeshout_cb_connection_callbackshout_init_shout_sock_initializeshout_shutdown_shout_sock_shutdownshout_free_shout_util_dict_freeshout_closeshout_connection_unrefshout_send_shout_timing_get_timeshout_connection_itershout_send_rawshout_connection_sendshout_connection_transfer_errorshout_queuelenshout_connection_get_sendqshout_sync_shout_timing_sleepshout_delayshout_versionshout_get_errnoshout_get_errorshout_set_host_shout_util_strdupshout_get_hostshout_set_portshout_get_portshout_set_passwordshout_get_passwordshout_set_mountstrlenmallocshout_get_mountshout_set_agentshout_get_agentshout_set_content_languageshout_get_content_languageshout_set_usershout_get_usershout_set_audio_info_shout_util_dict_setshout_get_audio_info_shout_util_dict_getshout_set_metashout_newcalloc_shout_util_dict_newshout_get_metashout_set_publicshout_get_publicshout_get_mimetype_from_selfshout_set_content_formatshout_get_content_formatshout_set_protocolshout_get_protocolshout_xaudiocast_implshout_connection_newshout_connection_set_callbackshout_connection_connectshout_roaraudio_implshout_http_implshout_icy_implshout_open_webmshout_open_mp3shout_open_oggshout_open_textshout_openshout_get_connectedshout_set_nonblockingshout_get_nonblockingshout_set_tlsshout_get_tlsshout_set_ca_directoryshout_get_ca_directoryshout_set_ca_fileshout_get_ca_fileshout_set_allowed_ciphersshout_get_allowed_ciphersshout_set_client_certificateshout_get_client_certificateshout_controlshout_set_callbackshout_set_formatshout_get_formatshout_set_dumpfileshout_get_dumpfileshout_set_nameshout_get_nameshout_set_urlshout_get_urlshout_set_genreshout_get_genreshout_set_descriptionshout_get_description_shout_util_dict_urlencode_shout_util_url_encodeshout_connection_set_nonblockingshout_metadata_newshout_metadata_freeshout_metadata_addshout_set_metadatashout_set_metadata_utf8_shout_util_read_headerrecv_shout_util_base64_encode_shout_util_url_encode_resourcestrcmprealloc_shout_util_dict_nextshout_queue_datamemcpyshout_queue_strshout_queue_printfvsnprintfshout_queue_freeshout_queue_collectshout_connection_refshout_connection__read_shout_sock_read_bytesshout_connection__write_shout_sock_write_bytesshout_connection__recoverable_shout_sock_error_shout_sock_recoverableshout_connection_select_tlsmodeshout_connection_set_wait_timeoutshout_connection_get_wait_timeout_happenedshout_connection_disconnect_shout_sock_closeshout_connection_starttls_shout_sock_connect_wto_shout_sock_connect_non_blockingshout_connection_set_errorselectshout_connection_get_error_shout_sock_connectedshout_connection_controlstrchrstrcasecmp_shout_httpp_create_parser_shout_httpp_initialize_shout_httpp_parse_response_shout_httpp_getvar__isoc23_strtolstrcasestr_shout_httpp_releaseshout_get_xaudiocast_responseshout_create_xaudiocast_requestshout_parse_xaudiocast_responsestrstrshout_create_icy_requestgetpidogg_stream_clearogg_sync_clearogg_sync_bufferogg_sync_wrote_shout_open_vorbisogg_sync_pageoutogg_page_bosogg_page_serialnoogg_stream_initogg_stream_pageinogg_sync_init_shout_open_theora_shout_open_opus_shout_open_speexmemmoveogg_stream_packetoutvorbis_synthesis_headerinvorbis_packet_blocksizevorbis_info_clearvorbis_comment_clearvorbis_info_initvorbis_comment_initogg_page_granulepostheora_decode_headertheora_info_cleartheora_comment_cleartheora_info_inittheora_comment_initspeex_packet_to_header_shout_resolver_initialize_shout_resolver_shutdown_shout_sock_get_localipgethostname_shout_resolver_getip__errno_location_shout_sock_set_error_shout_sock_stalled_shout_sock_valid_socketgetsockoptsock_active_shout_sock_set_blockingfcntl_shout_sock_set_nolingersetsockopt_shout_sock_set_nodelay_shout_sock_set_keepalive_shout_sock_writev_shout_sock_write_string_shout_sock_write_fmt_shout_sock_write_shout_sock_read_linegetaddrinfofreeaddrinfo_shout_sock_connect_wto_bind_shout_sock_get_server_socket_shout_sock_set_send_buffer_shout_sock_listen_shout_sock_acceptgetnameinfo_shout_resolver_getnameinet_ptonstrncpy_shout_thread_mutex_createsethostent_shout_thread_mutex_destroyendhostentgettimeofdaystderrfprintfstdoutfputcfwrite_shout_avl_node_new_shout_avl_tree_new_shout_thread_rwlock_create_c_shout_avl_tree_free_shout_thread_rwlock_destroy_shout_avl_insert_shout_avl_get_by_index_shout_avl_get_by_key_shout_avl_delete_shout_avl_iterate_inorder_shout_avl_get_first_shout_avl_get_prev_shout_avl_get_next_shout_avl_iterate_index_range_shout_avl_get_span_by_key_shout_avl_get_span_by_two_keys_shout_avl_get_item_by_key_most_shout_avl_get_item_by_key_least_shout_avl_verify_shout_avl_print_tree_shout_avl_tree_rlock_shout_thread_rwlock_rlock_c_shout_avl_tree_wlock_shout_thread_rwlock_wlock_c_shout_avl_tree_unlock_shout_thread_rwlock_unlock_c_shout_httpp_request_infohttpp_deletevar_shout_httpp_parse_postdata_shout_httpp_setvar__ctype_tolower_loc_shout_httpp_set_query_param_shout_httpp_get_query_param_shout_httpp_set_post_param_shout_httpp_get_post_paramhttpp_get_param_varhttpp_get_any_varhttpp_free_any_keyhttpp_get_any_key_shout_httpp_get_param_shout_httpp_addrefhttpp_str_to_method_shout_httpp_parse__copy_bufferhttpp_encoding_meta_freehttpp_encoding_meta_new__isoc23_sscanfhttpp_encoding_meta_appendhttpp_encoding_addrefhttpp_encoding_releasehttpp_encoding_newhttpp_encoding_readhttpp_encoding_eofhttpp_encoding_get_metahttpp_encoding_writehttpp_encoding_pendinghttpp_encoding_append_metasigfillsetsigdelsetpthread_sigmaskpthread_mutex_lockpthread_selfpthread_mutex_unlockpthread_setcancelstate_shout_thread_create_cpthread_attr_initpthread_attr_setstacksizepthread_attr_setinheritschedpthread_createpthread_attr_destroypthread_attr_setdetachstatepthread_mutex_init_shout_thread_initializesigemptysetsigaddsetpthread_mutex_destroy_shout_thread_shutdown_shout_thread_mutex_lock_c_shout_thread_mutex_unlock_c_shout_thread_cond_create_cpthread_cond_init_shout_thread_cond_destroypthread_cond_destroy_shout_thread_cond_signal_cpthread_cond_signal_shout_thread_cond_broadcast_cpthread_cond_broadcast_shout_thread_cond_timedwait_cpthread_cond_timedwait_shout_thread_cond_wait_cpthread_cond_waitpthread_rwlock_initpthread_rwlock_destroypthread_rwlock_rdlockpthread_rwlock_wrlockpthread_rwlock_unlock_shout_thread_sleepnanosleep_shout_thread_self_shout_thread_exit_cpthread_exit_shout_thread_rename_shout_thread_library_lock_shout_thread_library_unlock_shout_thread_joinpthread_jointhread_spin_createpthread_spin_initabortpthread_spin_destroypthread_spin_lockpthread_spin_unlocklibspeex.so.1libtheora.so.0libogg.so.0libvorbis.so.0libgcc_s.so.1libc.so.6libshout.so.3libtheora.so.1.0GLIBC_2.3GLIBC_2.32GLIBC_2.28GLIBC_2.1.3GLIBC_2.3.2GLIBC_2.38GLIBC_2.1GLIBC_2.34GLIBC_2.0/gnu/store/9awh4pi0xh18h33qh9ww6wjl75brv57h-speex-1.2.1/lib:/gnu/store/ripdygbs4s5mwd5sm2vmips4yspk7svm-libtheora-1.1.1/lib:/gnu/store/qs8sxzi2k0yl827r0gf4qhg0igawxx7f-libogg-1.3.5/lib:/gnu/store/52y8bnb4h2q2md1csrnkasvkc0cqdb75-libvorbis-1.3.7/lib:/gnu/store/g88kcslhrdmd0b5bap2f2ghj26i7jdlm-glibc-2.39/lib:/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib:/gnu/store/1h1k4jfcci5csngdqlb39zs4hnkjgwxf-gcc-11.4.0-lib/lib/gcc/i686-unknown-linux-gnu/11.4.0/../../..    U ii & 0 ;si Fri R^ii isii ~HLPTX`dhLPTX\ptxRM (8Sd 7 $(,G048<@ DH"L P'TQX \`d h1lptx|}>*84#  S!"#$%  &s $'(, 048)<*@+D,H-LDPAT.X/\``%d0h1lpt2x3|45,679Kd:;<=>v?@ABCDEF0G.HI JKL $M(,0N4(8<O@PDQHLRPTXT\`dYhUlVpWtxX|YZ[w\]y]^_`6Iabc\)TefghF ij k$l(,04m8<n@oDpHqSw otЃ[ hhhhh h($h0(h8p,h@`0hHP4hP@8hX0<h` @hhDhpHhxLhPhThXh\h`hdhhhplh`phPth@xh0|h hhhhhhhh h(h0h8ph@`hHPhP@hX0h` hhhphxhhhhhhhhph`hPh@h0h hhh hhhhh  h($h0(h8p,h@`0hHP4hP@8hX0<h` @hhDhpHhxLhPhThXh\h`hdhhhplh`phPth@xh0|h hhhhhhhh h(h0h8ph@`hHPhP@hX0h` hhhphxhhhhhhhhph`hPh@h0h hhh hhhhh  h($h0(h8p,h@`0hHP4hP@8hX0<h` @hhDhpHhxLhPhThXh\h`hdhhhplh`phPth@xh0|h hhhhhhhh h(h0h8ph@`hHPhP@hX0h` hhhphxhhhhhhhhph`hPh@h0h hhh hhhhh  h($h0(h8p,h@`0hHP4hP@8hX0<h` @hhDhpHhxLhPhThffff$ffffff_bll9ttUQЃÍt&Í&bUSll)ȉtt PQ҃]Í&fUSWalu't X 5ƃl]Í&f[$fffoaSv0pE[Ít&t pt捁 ptہp[DÍ&fJp[EÍt&tUpt1tqp[DÍt&t|pb1WKp`p[DÍ1[Ít&1Ít& T$B8tD$PrJcqPt$[Í&t&SJ t$gqPt$[Í&SjIgqPt$[Í&t&S:îI t$mqPt$=[Í&S ~ImqPt$Q[ffffffUWVSKI<UMƉj&RD$9l$11TrF t<c t$ gF|<[^_]Í v$D$ vsD$ t$ ZD$t$Yv$T$T:!‰$T$yT$ wt$t$t$PRWt$Xt$|$D$$t6 u uT1}XE\ [^_]Í&fՍt&؍&fD$tT$t@\Ít&fVS6t$t1F@t PF@1FF [^øVS9í6t$t8.u&F0t VЃ V4$1҃[^ú&fD$tT$t@PÍt&fÍ&vWVSt$6|$~@F ~4u\N$9GjP7F@FF FtF1~ tQ[^_Ít& WZYPV>G 9N$V4tuPQWfvWV^[^_Í&됍&fF@o&D$t T$Pd1øÍ&UWVSS4 hl$URPfx0tPFDUPu9F$VWP [^_]ÃWV¸t܍&PVf&t&UWVS)4T$$$ -1~4~4E׉D$(|$01 T$,$|$׹ T$ 󫍌$0͹ l$N@ɍQIl00T$ED$ T$4Rt$$Pt$(Q ~UN@ɍAI#L0u'#u#0ujV1ļ[^_]Ít&uڃjV ļ[^_]ÍL$ QjhRP iT$&vD$t@døÍ&&UWVS{2hLD$T$ v1D$)Ǎt&)PD$ Pt$t$ O9vvy҃t$|$WtzjWxy|$)wP;uw  GLUIoLtDžHy눍&v1[^_]Íjt$ t$#¸uƃ[^_]Í&UWVS;1t$0|$4)!~@-F ;Ft5wtWVYZPV4$u:~F N4tijv@ jV&wjV V![^_]fL$jj L$qh~4F9F X\{t&~F W1빍vF믍&fF$@sVWЉD$jjWVT$( u$붍…d~4C[^_]ÍvFX FTjj1҉…u~F =t&V$tVW҉ƒuFEʼnF &fVPt0…IF&vFPCt&FVF9t0F$@ VWЃw%uYVF9uЅt&uڃjV(4$[^_]Ð}"fjV~4yvV놃FF 9F1t&T$ VXD$FT;D$L$ sr1~F\DFt&~EFjVWjjWVd\f11+D$T$RPFyt&UWVSW, t$ l$$|$,tFtB~u<~dt6FLWt$0Pu%UVl [^_]Í&PVw֍&D$T$tt@dB|1Í&Í&vD$tD$øÍ&&D$tT$P8T$ P<1øÐWVSD$Dø+PH@D‹ u\tJ11 t EtK ut.u勒t\u[^_Ív[1^_Í&vjP5[^_Í&fUWVS*D$ tk$0΋$4׍L9w_& u x !9tB ux ux ux u+$0‰&1[^_]Ív1$4$4$0$4|* $419wO+$4tl$ &)t9FPUt$Wuރt$Wau΁[^_]Í&v$4vuK$4)uf+$0‰9 Z$0$4| ;G$4$01| | ! &vUWVS)x0h W7,$-T$T$ƅtt qUWPT$$RVVD4$*<$h,$跾ƅt:qWPUV<$[^_]Í&v1[^_]à W˺ҍUWVS'(8L$P蠸D$Q v$VŅ!G`ucPrPWucFD$tBPD$W蜺T$tQ R,$vPqPW菾t UY^jWu,[^_]Ít& Rǹt&rv6PW>uF tP:rPWu'rt$PWqFtPKrPWND$@G`yrv4PW譽F(D$r@T$L$ L$D$L$fD$tPt$t$WYu!t$ D$ PD$ PD$$uj;v脻ƅPrPWtj Vf,$jjWݽct&jWŽ,[^_]ÃwPW腸 VrPWYrPW> U躷XZjW@1brUPWjhVW&>D$ PD$ PD$ P觹‹D$$H&fUWVS3ç$ZrPQL$辵L$ ŋD$46 rt$@t$@QPVd 1퍃rw7PVET$8G tP:rPVGt L$@(T$$D$> fD$<؎,~l$<|$l$>D$T$ AtQxC D$($D$8@\$,G9$D$4D$D$0{{\$$D$ _t&GD$,D$0)Dž~#W$P$\$D軝D$9|$jD$|$G;$GD$$8D8 ‹$D8 ‹$D8 ӉT$T$Ht ÉƉT$P L$L$LىÃl$l L$Tƃ l$pŃ\$Xt$t$`l$tl$L$\t$dƃD$x1t$hD$|R؋\$$L$ @@ $$$tA1iT$D$D$ T$$uuyT$ |$G;$S$9s ;$&D$D$8t P\$DՒ1$G|Ĝ[^_]Ív\$t$|$0\$,$l$()uM9rg|$>t$D$L$D$T$>\$4 fT$<$؋,~l$<|$l$>L$\$ D$JtZxǃEX+$D$NjD$(x $.t&|$0)|$,t$,1~%VD$8$P$\$D蓚NjD$8t P\$D詑9t&|$(+$G $t& $P\$DD$Hƃ)l$(EEFEFE$$PWM$$EL$<$D$0D$&fG\$($D$,$S$Z9u$)|$(GD$&vD$8 P\$DWz$9v ;$FD$02H&VS } t$jj賚tF`|Fd\Fh1[^ø4$ffÍ&&WVSt$褚|$Wt$V\9tF|[^_Ít&F|[^_Í&fPD$@`HdPh1ffS*Þt$[ÍvUWVS{D$1[^_]Í&vlj֋W͉D$uT$PD$PiuWЉUuG Et_ O  ɉMO M _  ˉ] O ىM _ ىM _O ɉMOMu;EEfE 19OMOXMLL 9t9uUþ.WVSblpc&v<[^_]ÍvVSit$VF $[4$C[^Í&UWVS'ÛD|$Xj4jє Pn (,$XZT$RT$W_T$ RUV谐x(tx|1<[^_]à VH,$蠌4$舉ոfffUWVSgXD$ltt$p蛍׉D$T$‰ Ѝ|$ ubEht$`D$%t&Wt$U2GhWVvσht$`+1L[^_]Ít&t$`&vWV(t$`t$1|$ 9}D$`hvMx EE։Ɖ׉T$1t$ EE򋅐t$|$ )ωT$L$ˉщ)D$`ǀlǀp1Dž&t&L[^_]ËELt1ҍ&fuЉExE1҉T$ 1҉D$EDžl$D$T$ l$؋,~]|z+T$L$ l$xmM|ك4~r4|$L$`T$ fT$l$߹ll$p|$L$`T$ fT$l$߹ll$؃0~닍&VS蹑-t$VքFh$k4$蓆[^Í&UWVSwD|$Xhj Pnh,$ XZT$RT$W謇T$ RUV=x< tLJhdžx |1<[^_]à V,$虇4$ոU1W1VS裐Ë@txS1tS9u[^_Í&[1^_P$u3P0v$ut&S|>t$>uPht$w[ÍvUWVS| tft[W8PtRtLuj|y~%1uj hyG9 [^_]ÍvW~1uj 0y9w [^_]UWVS{U42D$,D$P׋VD$t L$l$D$D$F ƒ8~Rt$PAuP2T$(DuV ҋT$tFPu2jjPrVtD$ L$l$D$ D$+,[^_]ËFu2j -x뷍&UWVS,D$\$9C ؋[\$aT$9B TBD$)D$9P ‹@D$ D$ 9P H…9Q qʅ9V ~ti9W udotK9E uF]t-9C u(CtډL$&L$fS؅t9C t؋Ut 9E tGt9W tFt 9V zAʅt 9Q PT$ BtD$ D$ 9P T$BtD$D$9P D$PtT$T$9B D$PtT$\$9C r,[^_]S:yîjqt"T$@@P T$@[Í&t&VSx]j4yqƅtIjjqtED$FF D$FFTuPFjTPzt[^Í& V1mm[^fVSYxt$Fu5t P6m FP'l4$m[^Í&fT$@bUWVSwk,l$@|$DEpD$t$ 6WuU ~-F"Pt$ƉD$ Ǎ&Fƒ ‹FVuVWpÅFEt$6WuU VNVT$9u5t&FFv9t6WuU ڃfv9ut$6WuU |Fq݉l$919t>,[^_]Ít&&fVWoÅFT$RՃl$99l$2D$L$ 9HD$XD$1҉C ,[^_]ÃPWFokM1҉AЃE,[^_]Ít&O1 ȋL$ AЃE,[^_]ËL$ 1҃A,[^_]ÃthL$\$ IKtY L$\$  D$YK ACL$ AL$AˉD$AX\$|$ [_t{ \$|$ ){ ȉ_ 랋L$YCAtH D$L$ CX CAtH Ct$ s)‹D$^  T$PKFD$Ѝȃ ЉCV99ŋD$ PD$@D$L$ACCYCAtH D$L$ CX CAtH Kt$ ȉs^ Ѝȃ ЉCN)‰ȃ ‰VC?L$ ) ЉAD$@D$MG >D$PD$Hu&&vRtB9wsR)uÍD$ 1Í&WVS|$t$Xt t&3VwW xt#[u[^_Ív[u덴&T$ [^_Ít&UW賈=VSt$0\$4h&fuSvV xMtۍvEMƒ ‰UuۉЃ ЉEP9t%m 9EuE  ȉE9uۃ[^_]Í&Eƒ ЉEPt&9tʼnm 9EuE  ȉEٍ&fUÉȉم.q&ӋRuEUEƒ ‰UStC B k 9]UD$D$8tL$ 3T$HL$L$ Sft$0t$t&M UӃC9E}GD$D$ ;D$1Ш^GO Eth D$o} ‰ T$ WPUU9inAh 9Et0&L$t$0+&ЉL$t$0ƒD‰En[^_]Ít&9iUt&x|$|$1׃ZXSK PtB SCX Utj S|$k] <S S})׍} lj؉US_9~_UUPP9iAxH }to |$hE ) ډUP^ ӉXU) ډU1.&vuGO Eth D$o} ЍЃG뛉xH }to |$hE ) ډUPfGPH Wtz PxG Utj XT$hE ) T$ W]PӋP ډP_9) ډWUUD$/U P ^ I&t&D$T$L$ xu1Ív@>&&D$@ttt&‹@uÍt&1t&D$Pt t&ыRuÍt&t9Pt‹@ u1ɉÍ&Í&t&D$Pt t&ыRuÍt&t9Pt‹@ u1ɉÍ&Í&t&UWVS7lë D$ L$,l$09Hre+t$(xfG9v G9ws*)U7VT$4u# WgDžuك 1[^_]Í& [^_]Í&t&UWVSk ,t$@T$DL$D$u#D$T$LT$H,1[^_]Í&f Pgg|$,Ņt:u4t& UDgŅttut$LvV tЃ t$]l$,tm|$ 1L$7t$LvV L$u W]Džt0m9NsƋ|$ D$H8D$L,1[^_]Í&f|$ ֍&UWVSgj0t$Dl$LUt$LvV ~ D$Dl$DŋT$DL$L$lj|D$  W'fNjD$tKl$H|$D7uWvV u! UeŋD$(D$(tuˋl$HD$  P\NjD$u58v7UvV ue W\\NjD$,D$,t9FsˋT$LL$ T$P,1[^_]Í&fD$ D$|D$ÍD$뷍&vUWVS l$ |$(t$$EXtYt&3VuU t5x[u [^_]Ív[uɃ? [^_]Ít& [^_]ø&UWVS l$ |$(t$$EXtYt&3VuU t5x[u? [^_]Í&[uŃ [^_]Ë [^_]ø&WVSD$Pu [1^_Ít&0~9s uCtCޅt9s t@[1^_Í&vSzgD$$T$ D$D$D$ DJtL$RD[Í&0Zuj jP^[Í&Sfn TuPhD$Pe[ÍvSf> TuPhD$PX[[ÍvSf TuPhD$Phe[fUWVSt{ƉӍP1:t& u>B tO9s; t3 t9T&vJ uB9r鍴&f9v   t[^_]1t&SeND$ 0D$ 0pY[Í&t&WVS|$e 7ZGt#1&G 4oZ9ww w\Z<$TZ[^_Í&UWVƍBS0eä$PjdD$L1P>J<%tG<#$[^_]<+Ѹ B9v>J<%uGD$9s~|>OЉ Oa<wXGD$ D$ yЉL$ȉ vyxa<w$|$WD$ |$g& t$ $Y$$[^_]Í&0GЉD$ st&|$0뚍&GɉD$ St&|$7w $&t&UWVSc,D$D$L$D$D$ T$T$RPV]T$PuTl$tNuJ WGXEY^Pu[M|$EY]<,[^_]Ít&1T$j jbT$8@T$PvX[T$thNFy~|$tGL$[[^_Ít&&fUWVS^+ |$$D$(j jJ^ƅtsjj5^FŅtn WpSYt$4F]SE]XWt$,Qt77PVD$,p RXZVD$,p V [^_]Í݃ VRߍ&UWVS]K |$$l$ t5fG1t#&G47U ]9ww u̓ [^_]Ít&UWVSw],D$L$D$\$~gjf} 1|$W\$ V1ۉu-t&uD9t}7<:u9u䐃D$D$9D$u,[^_]Í9ڍ&v9t7< t9~D$ t4\$T$%\T$ËD$ &v PuWt$t$(\$ [_&&UWVSG\û$$ FPTŅt}VWPEQD$ D5D$}t$ D$4$Ut7 111vt u@lj19t> u9u UPĜ1[^_]Ít&t݃WsRT$P$Z j jT$RU-cwku$P$Z uPuP$yZ$L$T$u,$OĜ[^_]Ít&uuVP$1Zv&fT$D$L$ tt @t&Í&&SzZT$$D$D$D$T$T$RPD$,ppTu$t Pt @[Ð1[Í&fT$D$L$ tt @t&Í&&SYNT$$D$D$D$T$T$RPD$,pSu$t Pt @[Ð1[Í&fUWVSgYۻ|$4D$l$D$|$t$VUD$L$ D$$T$(twtswRtn:_tYA t5D$L$D$T$T$RQPRD$[Í&uAufz_u1[Ív1:_ùz_tĐAu뺍&WVS|$Xxt+tf PLu WL[^_Í&t&UWVSW+D$0:|$4WA|$4pjj/WD$ VMƅD$1UE8_u1x_u+D$9tg u$LT$ VIƅD$4.t|$4uE8_ux_tˋD$9u&D$D$ QL$t$'OL$ thL1 rT$Mt&D$D$[^_]Ít&p &p RID$ƒ t$ID$멍&fUWVSUk|$4D$l$D$|$t$VUD$j?V_KŅt_uVP$/Q uUP$QEU$T$UK}$@t T$ V~F$A$t*j/l$ UJƅt}t xu-v W'F1Ĝ[^_]Í&$1uUP$\P csVP$EP$@t t w+L~uPuP$P$@MPuP$O$L$T$<$JEu댃s끃usueuWrIr;q-u%s& t$H$AbfSD$L$ \$T$t\$L$ T$[[Ít&SD$L$ \$T$t\$L$ T$[[Ít&U1WVS%OÙ T$0L$ |$(l$,tEt|D$$ttD$$tjtftbu+79GVPQD;Et [^_]Ív D$00CD$4Eɍ뾐WVSt$tNtD&vv t PLCGt P9C W-Cu[1^_UWVSNËl$(|$,jjMƅt8)<=Yy11T1\"G9wڍv FPBL$D$0AG 7)1ҋD$ l$(1T$L$$L$<\<"4D$ D$T$ uljȋl$(T$D$L$$D1<"t<;i9UD1<"u9?T1\9&G<"tLT$$<2;Jl$(L$$T$D$$Pt:&fft$bt$,D$`L$HD$CCCCHt$, jj?|$ D$lp;D$p@@@@HD$n D$lpc;D$p\$p@@@D$HCH0 BT$ P>t$D$,T$F3 )ՅD$ fD$vT$L$t/t(t&v‹@ u 1Í&1øÍ&&D$t1øÍ&t&VSiEݧt$.t [^f v 8Xv|8Ft P:F t P:F,t P9F8t P9 V91҃[^ús&WVS|$DjLjRDƅtM@DuPW>t59sPWu>u>OF<\F[^_ÍMF,NF[^_Í& V18UWVSCkL$0|$4l$81u [^_]fq A(L$0 Q$t$D$T$UPRVWB 9tŋL$0A~V )t$Lt$LUWQЃ tƉ)t Rt$t$t$$PB On&v t$Lt$LUWQЃ t묍t&:SD$T$ L$t.X$9X(u@Dtt L$[t&1[Ít&[ø[Í&vD$tP @ Ív1t&UWVSB t$ |$,F8t&V@+V"9uR u W9D$ *l$t$t&v tFtFtE; }RT$9 PT$RW@5Ft="}fEFnt,1L"u \L z;Fr"v ofv Et$ 2D$p@Yt$$;9^t$/9ƋD$T$d,ҍE}E W7L$pA8 L$`A<y@L$| uQt$(RWP9$p8t$ t$lV+4D$p h8fUYt$3D$ L[^_]fT$ Pp8T$-f uRut$(RWPd9$p8t$ t$lV3D$ph8 fED$ L[^_]à t$$7D$ t$$7D$D$  P2S=^D$tt$P94[øfffffT$ L$9Ít&VS=t$F t Pl2Ft PY2 VM2[^fUWVS7=ë$t$MU}L$T$V7XZj V6YXjV6XZj V6YXjV6XZjV6 jVj84$|3G2GYXWf54$n/XZjjC3,$1T$L$$ыOuĜ1[^_]Í& V3 _PW14$ /1Ĝ[^_]Í&fUWVS<ËTjj;ƅtCjj;Džt l$(UJ/y+ W0 V10L[^_]Í&D$p F$0F T$$=2T$H$0.Xt$lf0F$0wFD$tD$xZYhUG:XZjU4L$|uRL`WPFUPP7t U0/& U/L[^_]Í&vjUu9F뗍&fS:jt$&0[ÐWVSx:uVhP3 VhP3X_ZjP/$lj2ƋFPv$/F {/F$/Fv$.FYXVW2Xt$ V$6XZjV3Y_jV3XZjV3Y_j V3XZjV3 jVj55ǃĐ[^_ÐSZ9Λt$X-[ÍvS:9ît[Ív PA7$37X_ZPO4ǃ[Í&S8>t$x/[ÍvS8t$h+[ÍvVS8 t$jFP2XZjV.[^ÐVSY8͚t$VS,4$+5[^Ít&S*8ÞD$Pd0[Í&&S7nD$PT,[Í&&VMbS78 L$0t$,)‰T$ii@BT$VI. D$ PFVP44$?*$[^Í&fVSY7͙t$V.XFZVP,4$*[^Í&t&S7Îjt$v2[ÐS6nt$h,[ÍvS6Nt$.[ÍvS6.t$+[ÍvS6t$(2[ÍvUCWVSr6$L$8l$T$i@B)iL$ U|$ W4t9N1+&vD$D$D$D$ UW3t>tڃ[^_]fUWVS5[ i+ W,t. P,tv(t9ut- P(u 1WR( [^_]Ít& W7( [^_]Í&vWVSH5ü/t Ƌ@u t$41t& W+ _PV)<$' t$0t&VS4M{/Ƌ@t P) t$)F[^ÐS4PE+[Sz4P5'[WVSX4̖|$(D$Pw24$* _PW(4$& [^_Í&t&S3njt$,3[ÍS3>t$.[ÍvS3t$&3[Í&Sz3t$x,[fUWVSD$ content-type__errormessage__uriNONE__req_typeHEADDELETETRACECONNECTPLAYSTATS__rawuri__queryargs__protocol%llxidentity%lx%s%s thread.cmain.cMain ThreadĞD ,+@@ @` @` 08@P`p@ (08@P`p@ 08@P`p (08@P`p (08@P`p 08@P`p (08@P`p (08@P`p$tI__\-/LMMMMMMsMeMZMOML; :t  kdk, l $! ! ! ! "h d# $ $d $ T% %l & & 4' ' '(4(,(l())t*<*Pd++,4,t,P,-t.l../$///8D0Ld0`2224D3Hd3\3p33334$444T4d4$484L4`4t55T6Pt6d66747 d787`77;T?<@\4@|T@@A4BDDDD0E$FFDGG,dHpHHHI tI( I< $J| DJ J J!K!$K0!TL!tL!MX"N#N#P#tT$UX%4Ul%dU%U%DV%$Xh&Y&\(^)T`*b+g-Tg-ti.j/l04n1to2q2$rL3dr|3t44u4DvP5tv|5D}@6}x6}6ăL7 77$7t7 8Ą08|88D,9d99d`::T;$;Ď;<ďx<<<t =@=`=t=$=d=đ=$D>dt>>Ē>>$?TX??tP@|@@,AAHBhCԙCtDDDDEhF,GhGDGG$H4\HԠH4H8II4I(JJJKtKԦKDLLMMıMMDMM4PNdNԵtOdOlPTPԷPQ4A|tp<|{AA NXA HCD HR  AAD ,;@<TAA NYA HCD HS  AAJ Pd\AA AAN i,A0H C,A0^ [,A0A4G8AAA NKDDC HF  AAA 4x7ANKDC HC AC CC`$AA LAC ^ AA AAD e$C(A,C0H F AA AAA |AA NHEB HMGA HKGA HGGA H_GGA He  AAE CA JC CA47ANKDC HC AC CC>4@,<uAA A|  AAG $8EAA z AA `KtAA CUAA H\  AAF cA H_DAA HNAFA PAAA KnA HOA HOA HOA H  ACC AA @ >Ch E \ Vp  +     $   ,  (  4 $ 0 8 < L 8 $` T &t f  V  H ANhBBA HC AH GBBA HC AH BBBA HC AE BEBA HC AB J FH $ +<8 |AA NYA HCD HS  AAJ x ( !(ANDGD HA$ !$ANGD HA( !(ANDGD HA$ !$ANGD HA(4 !(ANDGD HA$` $!$ANGD HA( ,!(ANDGD HA$ 0!$ANGD HA 8!AA AANPSXF\A`LPx\D`OPH CA AAG C\C`LPK\C`LPK\D`F\H`F\C``PQXJ\D`DdAhAlApH\D`F\D`^PM\D`NTAXB\A`HPMTAXF\C`F\AXB\A`M\AXA\A`HPKXA\A`HPP\A`PPF AC AAF C\C`LPg\D`F\D``PQ\D`DdDhAlApH\D`ZPO \C`LPK\D`F\D`ZPQ\J`DdAhAlApH\D`] u\A`OPM\D`OPM\D`F\BPC \D`F\D`B C\D`|#ANHA(#(ANKA HCA0#?ANSDAA HC AD ##P$#AL AAC0JgAA AAN c,F0E C,A0P NAA AA,t)>5AA NQA P AA )>cAA AANHPLAPH@KDAHDLAPFLAHALAPN@PHALDPH@LLAPH@YHELBPH@^LDPK@KLAPFLAHALAPFLAHALAPFLAHALAPI@~DDHDLDPH@MDDHDLDPH@@LAPH@YHALAPFLAHALAP`@u AA AAA L AA AAA @*@@`AA ARBB HGF RO  AAA |*\@AA AAC(r FA AAF  AA AAK C CA AAG PAA AA(x+@+ANNA HCA+@AA LACbLCA[DACLEDGHECAWAA AAACCOAJCGGH4h,FRAA NIB H^  AAA ,$G ANG HA, GAF ALFAHGPALR AA AAD ALGLMALyHRO^IAgAL4t-pLHAA NFB H^  AAA -L-tLH-pLGAA AVADA HQ  AAF D AA .tL+ 4.LAND HAHX.LPAA AAN0O AA AAK I8TWUAN0GW7AC CYAB EL AA`>WAA AAE0Z4C8A X_AA Ep  CAE Z CA< ?4XLAL CUB EQA JA AAH`?DX{AA Lw  AAI A  CAA AHCH (?xX-ANDGED HAt?|XAA CAN i(C,B0H Q(C,E0K J AA AAD S(C,E0H HAA AAP@XAC CCQBILlQJAGBOPBBAHl AA AAA JBBH<@(YAA AAC@AA AA$AZDANB HiA`DAZAA NB HIBB HM_EA HC  CAH CA JE AA<AZ`AA NTA HCD P AAJA [jAA AAN@aDBHALCPF@RHALAPH@PDJHALCPI@lDBHALCPF@RDFHALCPF@y CA AAE SHALAPH@\ CA AAA CHALAPH@Y AA AAF Z AA AAA R CA AAA B^SHB^\AA AXBAC FN  FAD Y AAx@C^AA LAC0a4C8A 08-06-2001 dnl Rewritten for libshout 2 dnl Brendan Cully 20030612 dnl dnl $Id$ # XIPH_PATH_SHOUT([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) # Test for libshout, and define SHOUT_CPPFLAGS SHOUT_CFLAGS SHOUT_LIBS, and # SHOUT_THREADSAFE AC_DEFUN([XIPH_PATH_SHOUT], [dnl xt_have_shout="no" SHOUT_THREADSAFE="no" SHOUT_CPPFLAGS="" SHOUT_CFLAGS="" SHOUT_LIBS="" # NB: PKG_CHECK_MODULES exits if pkg-config is unavailable on the target # system, so we can't use it. # seed pkg-config with the default libshout location PKG_CONFIG_PATH=${PKG_CONFIG_PATH:-/usr/local/lib/pkgconfig} export PKG_CONFIG_PATH # Step 1: Use pkg-config if available AC_PATH_PROG([PKGCONFIG], [pkg-config], [no]) if test "$PKGCONFIG" != "no" && `$PKGCONFIG --exists shout` then SHOUT_CFLAGS=`$PKGCONFIG --variable=cflags_only shout` SHOUT_CPPFLAGS=`$PKGCONFIG --variable=cppflags shout` SHOUT_LIBS=`$PKGCONFIG --libs shout` xt_have_shout="maybe" else if test "$PKGCONFIG" != "no" then AC_MSG_NOTICE([$PKGCONFIG couldn't find libshout. Try adjusting PKG_CONFIG_PATH.]) fi # pkg-config unavailable, try shout-config AC_PATH_PROG([SHOUTCONFIG], [shout-config], [no]) if test "$SHOUTCONFIG" != "no" && test `$SHOUTCONFIG --package` = "libshout" then SHOUT_CPPFLAGS=`$SHOUTCONFIG --cppflags` SHOUT_CFLAGS=`$SHOUTCONFIG --cflags-only` SHOUT_LIBS=`$SHOUTCONFIG --libs` xt_have_shout="maybe" fi fi # Now try actually using libshout if test "$xt_have_shout" != "no" then ac_save_CPPFLAGS="$CPPFLAGS" ac_save_CFLAGS="$CFLAGS" ac_save_LIBS="$LIBS" CPPFLAGS="$CPPFLAGS $SHOUT_CPPFLAGS" CFLAGS="$CFLAGS $SHOUT_CFLAGS" LIBS="$SHOUT_LIBS $LIBS" AC_CHECK_HEADERS([shout/shout.h], [ AC_CHECK_FUNC([shout_new], [ ifelse([$1], , :, [$1]) xt_have_shout="yes" ]) AC_EGREP_CPP([yes], [#include #if SHOUT_THREADSAFE yes #endif ], [SHOUT_THREADSAFE="yes"]) ]) CPPFLAGS="$ac_save_CPPFLAGS" CFLAGS="$ac_save_CFLAGS" LIBS="$ac_save_LIBS" fi if test "$xt_have_shout" != "yes" then ifelse([$2], , :, [$2]) fi ])dnl XIPH_PATH_SHOUT ))))entry(namedocnode(type directoryentry(namelibshoutnode(type directoryentry(nameCOPYINGnode(typeregularcontentsb GNU LIBRARY GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the library GPL. It is numbered 2 because it goes with version 2 of the ordinary GPL.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Library General Public License, applies to some specially designated Free Software Foundation software, and to any other libraries whose authors decide to use it. You can use it for your libraries, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library, or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link a program with the library, you must provide complete object files to the recipients so that they can relink them with the library, after making changes to the library and recompiling it. And you must show them these terms so they know their rights. Our method of protecting your rights has two steps: (1) copyright the library, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the library. Also, for each distributor's protection, we want to make certain that everyone understands that there is no warranty for this free library. If the library is modified by someone else and passed on, we want its recipients to know that what they have is not the original version, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that companies distributing free software will individually obtain patent licenses, thus in effect transforming the program into proprietary software. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License, which was designed for utility programs. This license, the GNU Library General Public License, applies to certain designated libraries. This license is quite different from the ordinary one; be sure to read it in full, and don't assume that anything in it is the same as in the ordinary license. The reason we have a separate public license for some libraries is that they blur the distinction we usually make between modifying or adding to a program and simply using it. Linking a program with a library, without changing the library, is in some sense simply using the library, and is analogous to running a utility program or application program. However, in a textual and legal sense, the linked executable is a combined work, a derivative of the original library, and the ordinary General Public License treats it as such. Because of this blurred distinction, using the ordinary General Public License for libraries did not effectively promote software sharing, because most developers did not use the libraries. We concluded that weaker conditions might promote sharing better. However, unrestricted linking of non-free programs would deprive the users of those programs of all benefit from the free status of the libraries themselves. This Library General Public License is intended to permit developers of non-free programs to use free libraries, while preserving your freedom as a user of such programs to change the free libraries that are incorporated in them. (We have not seen how to achieve this as regards changes in header files, but we have achieved it as regards changes in the actual functions of the Library.) The hope is that this will lead to faster development of free libraries. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, while the latter only works together with the library. Note that it is possible for a library to be covered by the ordinary General Public License rather than by this special one. GNU LIBRARY GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Library General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also compile or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. c) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. d) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Library General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ))entry(nameNEWSnode(typeregularcontents;libshout 2.4.6 (20220410) * Fixed pkg-config file (#2329) * Made vorbis an optional codec * Do not pass to small headers to libspeex (see also the same mirror-patch in Icecast) * Updated documentation, mostly in regard of making it clearer which functions are now obsoleted * General code cleanup * Added compiler warnings about obsoleted functions and ignored return values * Replaced old shout_set_metadata() with new shout_set_metadata_utf8() * Added support for plain text streaming * Fixed shout_set_metadata*() sometimes returning SHOUTERR_RETRY (#2328) * Workaround old clients by emulating SHOUTERR_RETRY with SHOUTERR_BUSY (#2316) * Remove our re-implementation of X509_check_host() * Allow to disable building tools (#2331) libshout 2.4.5 (20201219) * Improved shout.h for reading, and understanding. * Marked dumpfile support as obsolete (as SHOUT_PROTOCOL_XAUDIOCAST already is). * Added Support for setting the content language. * Avoid the use of obsolete functions (#2317). * Several small fixes for non-blocking mode (#2321, #2315). * Corrected detection of libogg (mostly for windows targets). * Now accept TLS mode "auto" when build without TLS support. * Added new tool shout(1). libshout 2.4.4 (20201001) * Fixed handling of blocking/non-blocking mode * Fixed ICY port increment * Fixed reusing of handles * Fixed error handling of Ogg sync layer * Fixed Passing of errors between connection and instance layer Without this fix died connections were not correctly detected. * Fixed and improved build scripts libshout 2.4.3 (20190529) * Fixed building with OpenSSL 1.1.0. * Fixed static building with OpenSSL. * Added support for PUT. * Added support for WebM and Matroska with full timing. * Added support to inspect the full server's TLS certificate chain. * Improved API to set the format used for streaming. libshout 2.4.2 (20190429) * Fixed handling of invalid characters in strings: * Correctly escape mountpoint names (#2233), * Correctly escape mountpoint names and passwords in deprecated metadata API (#2304), * Do not allow ICE headers with invalid characters (#2302). * Fixed and updated build system. * Allow building libshout on Android. * Rewrote TLS handling code and statemachine (#2244, #2298, #2301, #2303). * Support OPTIONS for RFC 2817 TLS mode. * Allow manual inspection of server's TLS certificate. * Updated documentation. libshout 2.4.1 (20151120) * Fixed issue with missing file in distribution libshout 2.4.0 (20151111) * Audio only WebM support. * Protocol level meta data support improved. Some API calls got replaced and marked as obsolete. * Code hardened. * Fixed overlinking. * Removed Debian packaging. * TLS support (RFC2818 and RFC2817, mode can be autodetected). * Improved HTTP protocol: * Set Host:-header (vhosting), * Check for server capabilities. * Basic support for RoarAudio protocol. libshout 2.3.1 (20120525) * Opus support libshout 2.3.0 (20120201) * Rough WebM support * removed the shout-config script libshout 2.2.2 (20060619) * Handle Oggs that don't begin with zero granulepos. * Install header in correct location (broken in 2.2.1). * Theora memory leak fix. * Non-blocking shout_open was failing unnecessarily in the connect_pending state. * Cast some size_ts to ints for display purposes. libshout 2.2.1 (20060417) * Fix error handling while opening a connection, so that shout_open can be retried. * pkgconfig fix for header installation * Fix a memory leak in HTTP authentication libshout 2.2 (20060103) * Speex support * Fix a double-free bug when login fails * More robust server response parser * Theora timing fix ))entry(nameREADMEnode(typeregularcontentsLlibshout -------- Libshout is a library for communicating with and sending data to an Icecast server. It handles the socket connection, the timing of the data, and prevents bad data from getting to the Icecast server. With just a few lines of code, a programmer can easily turn any application into a streaming source for an Icecast server. Libshout also allows developers who want a specific feature set (database access, request taking) to concentrate on that feature set, instead of worrying about how server communication works. Please refer to the api reference and example code to start learning how to use libshout in your own code. Libshout is licensed under the LGPL. Please see the COPYING file for details. If you have any questions or comments, please visit us at https://www.icecast.org/ or email us at team@icecast.org. ))entry(name example.cnode(typeregularcontents/* example.c: Demonstration of the libshout API. * $Id$ */ #include #include #include #include int main() { shout_t *shout; unsigned char buff[4096]; size_t read, total; int ret; shout_init(); if (!(shout = shout_new())) { printf("Could not allocate shout_t\n"); return 1; } if (shout_set_host(shout, "127.0.0.1") != SHOUTERR_SUCCESS) { printf("Error setting hostname: %s\n", shout_get_error(shout)); return 1; } if (shout_set_protocol(shout, SHOUT_PROTOCOL_HTTP) != SHOUTERR_SUCCESS) { printf("Error setting protocol: %s\n", shout_get_error(shout)); return 1; } if (shout_set_port(shout, 8000) != SHOUTERR_SUCCESS) { printf("Error setting port: %s\n", shout_get_error(shout)); return 1; } if (shout_set_password(shout, "hackme") != SHOUTERR_SUCCESS) { printf("Error setting password: %s\n", shout_get_error(shout)); return 1; } if (shout_set_mount(shout, "/example.ogg") != SHOUTERR_SUCCESS) { printf("Error setting mount: %s\n", shout_get_error(shout)); return 1; } if (shout_set_user(shout, "source") != SHOUTERR_SUCCESS) { printf("Error setting user: %s\n", shout_get_error(shout)); return 1; } if (shout_set_content_format(shout, SHOUT_FORMAT_OGG, SHOUT_USAGE_UNKNOWN, NULL) != SHOUTERR_SUCCESS) { printf("Error setting format: %s\n", shout_get_error(shout)); return 1; } if (shout_open(shout) == SHOUTERR_SUCCESS) { printf("Connected to server...\n"); total = 0; while (1) { read = fread(buff, 1, sizeof(buff), stdin); total = total + read; if (read > 0) { ret = shout_send(shout, buff, read); if (ret != SHOUTERR_SUCCESS) { printf("DEBUG: Send error: %s\n", shout_get_error(shout)); break; } } else { break; } shout_sync(shout); } } else { printf("Error connecting: %s\n", shout_get_error(shout)); } shout_close(shout); shout_shutdown(); return 0; } ))entry(name nonblocking.cnode(typeregularcontents /* -*- c-basic-offset: 8; -*- * example.c: Demonstration of the libshout API. * $Id$ */ #include #include #include #include #if !(defined(WIN32) && !defined(__MINGW64__) && !defined(__MINGW32__)) #include #endif #include int main() { shout_t *shout; unsigned char buff[4096]; size_t read, total; int ret; shout_init(); if (!(shout = shout_new())) { printf("Could not allocate shout_t\n"); return 1; } if (shout_set_host(shout, "127.0.0.1") != SHOUTERR_SUCCESS) { printf("Error setting hostname: %s\n", shout_get_error(shout)); return 1; } if (shout_set_protocol(shout, SHOUT_PROTOCOL_HTTP) != SHOUTERR_SUCCESS) { printf("Error setting protocol: %s\n", shout_get_error(shout)); return 1; } if (shout_set_port(shout, 8000) != SHOUTERR_SUCCESS) { printf("Error setting port: %s\n", shout_get_error(shout)); return 1; } if (shout_set_password(shout, "hackme") != SHOUTERR_SUCCESS) { printf("Error setting password: %s\n", shout_get_error(shout)); return 1; } if (shout_set_mount(shout, "/example.ogg") != SHOUTERR_SUCCESS) { printf("Error setting mount: %s\n", shout_get_error(shout)); return 1; } if (shout_set_user(shout, "source") != SHOUTERR_SUCCESS) { printf("Error setting user: %s\n", shout_get_error(shout)); return 1; } if (shout_set_content_format(shout, SHOUT_FORMAT_OGG, SHOUT_USAGE_UNKNOWN, NULL) != SHOUTERR_SUCCESS) { printf("Error setting user: %s\n", shout_get_error(shout)); return 1; } if (shout_set_nonblocking(shout, 1) != SHOUTERR_SUCCESS) { printf("Error setting non-blocking mode: %s\n", shout_get_error(shout)); return 1; } ret = shout_open(shout); if (ret == SHOUTERR_SUCCESS) ret = SHOUTERR_CONNECTED; if (ret == SHOUTERR_BUSY) printf("Connection pending...\n"); while (ret == SHOUTERR_BUSY || ret == SHOUTERR_RETRY) { #if !(defined(WIN32) && !defined(__MINGW64__) && !defined(__MINGW32__)) static const struct timespec ts = {.tv_sec = 0, .tv_nsec = 10 * 1000 * 1000}; nanosleep(&ts, NULL); #else usleep(10000); #endif ret = shout_get_connected(shout); } if (ret == SHOUTERR_CONNECTED) { printf("Connected to server...\n"); total = 0; while (1) { read = fread(buff, 1, sizeof(buff), stdin); total = total + read; if (read > 0) { ret = shout_send(shout, buff, read); if (ret != SHOUTERR_SUCCESS) { printf("DEBUG: Send error: %s\n", shout_get_error(shout)); break; } } else { break; } if (shout_queuelen(shout) > 0) printf("DEBUG: queue length: %d\n", (int)shout_queuelen(shout)); shout_sync(shout); } } else { printf("Error connecting: %s\n", shout_get_error(shout)); } shout_close(shout); shout_shutdown(); return 0; } ))))entry(namelibshout-2.4.6node(type directoryentry(nameCOPYINGnode(typeregularcontentsb GNU LIBRARY GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the library GPL. It is numbered 2 because it goes with version 2 of the ordinary GPL.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Library General Public License, applies to some specially designated Free Software Foundation software, and to any other libraries whose authors decide to use it. You can use it for your libraries, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library, or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link a program with the library, you must provide complete object files to the recipients so that they can relink them with the library, after making changes to the library and recompiling it. And you must show them these terms so they know their rights. Our method of protecting your rights has two steps: (1) copyright the library, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the library. Also, for each distributor's protection, we want to make certain that everyone understands that there is no warranty for this free library. If the library is modified by someone else and passed on, we want its recipients to know that what they have is not the original version, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that companies distributing free software will individually obtain patent licenses, thus in effect transforming the program into proprietary software. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License, which was designed for utility programs. This license, the GNU Library General Public License, applies to certain designated libraries. This license is quite different from the ordinary one; be sure to read it in full, and don't assume that anything in it is the same as in the ordinary license. The reason we have a separate public license for some libraries is that they blur the distinction we usually make between modifying or adding to a program and simply using it. Linking a program with a library, without changing the library, is in some sense simply using the library, and is analogous to running a utility program or application program. However, in a textual and legal sense, the linked executable is a combined work, a derivative of the original library, and the ordinary General Public License treats it as such. Because of this blurred distinction, using the ordinary General Public License for libraries did not effectively promote software sharing, because most developers did not use the libraries. We concluded that weaker conditions might promote sharing better. However, unrestricted linking of non-free programs would deprive the users of those programs of all benefit from the free status of the libraries themselves. This Library General Public License is intended to permit developers of non-free programs to use free libraries, while preserving your freedom as a user of such programs to change the free libraries that are incorporated in them. (We have not seen how to achieve this as regards changes in header files, but we have achieved it as regards changes in the actual functions of the Library.) The hope is that this will lead to faster development of free libraries. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, while the latter only works together with the library. Note that it is possible for a library to be covered by the ordinary General Public License rather than by this special one. GNU LIBRARY GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Library General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also compile or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. c) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. d) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Library General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ))))))entry(namemannode(type directoryentry(nameman1node(type directoryentry(name shout.1.zstnode(typeregularcontents1(/d? !&tQOpB6-~&xJJ=ǟk)28UC͒Yy/|I-1U7\M{d)|W+-nC9oo;mӂ!ED cX`<"Y`.RGv٬2f9P <\7pocUEPoI./_,͐3rQnL%d"*^Hd,((``Sܓ$"l6ҝҲYpK :iiU·L(]otMd= & ޯ.ѡNy>%<|iuٱҸǯ][up <9鑛o*a9VH&GV#ւQ ɀfi^oy{N{\m8`p>+Duik(2MB }Mfn:S|xt\9 9כXrSm(os"=xkntS8RD3EpD "lk!l0nd7nuɗ8=’91{uέ>ew>i iD 0[jrG먡R̈ $I D`6D!iZRiЁҠHc%uܫlQm}&#S$T:+ݫ`89=mNIR-93} CoxJc:"28ܒwDwAYM!!X]g8h^I^c(qШ˖@p g7H`JCa8iձ {W$ZAo.땍V[in<#/v' \B0&5 t6@٘3j=m|鈒3J+]bВȎnPdȜ7s=F"@,Mz Y܃pqh43Α6)Ca#v^[om>Gzj#t<%Rʾ\ %AR"sχ8-99Dj$+6yirj~_Vb2;