Commit Graph

537 Commits

Author SHA1 Message Date
inikep
f33021552b added playTestsMSYS.sh 2016-05-18 16:38:36 +02:00
klemens
268775dae8 spelling-fixes, as of lintian.debian.org 2016-05-16 22:23:24 +02:00
inikep
63ecd747de added common/entropy_common.c 2016-05-13 11:27:56 +02:00
inikep
58a1d45aa5 Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev 2016-05-13 11:05:35 +02:00
inikep
0bdb6a8118 changed definition of UTIL_createFileList 2016-05-13 10:52:02 +02:00
inikep
3eabe9b474 added zlibWrapper - zstd wrapper for zlib 2016-05-12 17:15:41 +02:00
inikep
4dbf7f4a3b dynamic memory allocation in UTIL_createFileList 2016-05-11 14:11:00 +02:00
Yann Collet
a96f9fd5bc datagencli uses mem.h 2016-05-11 11:42:51 +02:00
Yann Collet
b3a9938d0c Merge pull request #182 from inikep/dev
support for Visual Studio 2012, 2013, 2015
2016-05-10 17:18:12 +02:00
Yann Collet
b12b369817 fixed : unused argument in printf 2016-05-10 15:30:43 +02:00
inikep
95459458ed disable Visual Studio code analysis 2016-05-10 14:42:54 +02:00
inikep
3733797fcd bench.c: experimental -r (operate recursively on directories) for Windows and _POSIX_C_SOURCE >= 200112L 2016-05-10 14:22:55 +02:00
Yann Collet
bd39d54576 zbuff supports byte-by-byte decompression scenarios 2016-05-10 14:14:19 +02:00
inikep
ed9a08538c Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev
# Conflicts:
#	lib/common/util.h
#	programs/paramgrill.c
#	visual/2013/fullbench/fullbench.vcxproj.filters
#	visual/2013/fuzzer/fuzzer.vcxproj.filters
2016-05-10 13:20:01 +02:00
Yann Collet
d693117113 fixed : null-length string roundtrip 2016-05-10 05:56:09 +02:00
Yann Collet
8b23eea694 minor refactor : more accurate variables scope
Added null-length string test
2016-05-10 05:37:43 +02:00
inikep
349fcf7ea2 fixed Linux compilation 2016-05-09 18:04:07 +02:00
inikep
aaaf923a17 common/util.h moved to programs/util.h
decompress/fse_decompress.c moved to common/
2016-05-09 16:19:25 +02:00
Yann Collet
d782890576 fixed datagen 2016-05-09 12:28:20 +02:00
Yann Collet
ceca200c77 datagen uses mem.h 2016-05-09 12:20:50 +02:00
Yann Collet
59b6ba7677 Merge pull request #180 from thatsafunnyname/patch-1
No stdint.h on OpenVMS.
2016-05-09 11:56:42 +02:00
Yann Collet
f6ca09b5ff Reduced console display on loading lots of files with zstd --train. Reported by @KrzysFR, see #177 2016-05-09 04:44:45 +02:00
Yann Collet
95af06f6ef fixed legacy dictionary decompression 2016-05-08 08:23:51 +02:00
Yann Collet
0c0f314550 CLI supports dictionary decompression in legacy mode v0.5.x 2016-05-08 08:11:24 +02:00
Yann Collet
f849462d4c minor refactor : more accurate variable scope 2016-05-07 22:43:40 +02:00
inikep
13c8424ea0 code cleaning 2016-05-05 13:58:56 +02:00
inikep
0bd0faec32 fixed compatibility issues 2016-05-05 13:10:57 +02:00
inikep
9c22e57bfb Compiler Options moved to util.h 2016-05-05 11:53:42 +02:00
Yann Collet
3f8ed50bf1 Added gnu90 test
work-around : disabled automatic selection of huff0 quad-decoder (see #173)
2016-05-05 03:01:13 +02:00
thatsafunnyname
dca5cf92ac No stdint.h on OpenVMS.
No stdint.h on OpenVMS, it is inttypes.h instead, some projects use HAVE_STDINT_H.
2016-05-04 15:42:25 +01:00
thatsafunnyname
eef5fdb58a No stdint.h on OpenVMS.
No stdint.h on OpenVMS, it is inttypes.h instead, some projects use HAVE_STDINT_H.
2016-05-04 15:39:31 +01:00
Yann Collet
6f9c056662 Fixed BMI behavior on x86 and x32 targets, reported by @tycho (#178) 2016-05-01 10:26:30 +02:00
inikep
bab4317961 util.h must the the first include to #define _POSIX_C_SOURCE 2016-04-29 15:19:40 +02:00
inikep
55d047aa92 getTotalFileSize moved to common/util.h 2016-04-28 16:50:13 +02:00
inikep
d5ff2c3d9a ordering of #include 2016-04-28 14:40:45 +02:00
inikep
83c76b4594 bench.c: time functions moved to common/util.h 2016-04-28 13:16:01 +02:00
inikep
69fcd7c0ae getFileSize moved to common/util.h 2016-04-28 12:23:33 +02:00
inikep
ea4ee3eee0 added compatibility with Visual C++ 2012 2016-04-25 13:09:06 +02:00
inikep
f066816998 fix for g++ compilation 2016-04-22 18:54:05 +02:00
inikep
db3964382c introduced ZSTD_NODECOMPRESS to link only compressor 2016-04-22 18:22:30 +02:00
inikep
a1febea01d Error functions moved to common/zstd_common.c 2016-04-22 17:14:25 +02:00
inikep
3c7c3527d0 introduced ZSTD_NOCOMPRESS to generate decompressor only 2016-04-22 13:59:05 +02:00
inikep
23a0889301 separation of lib/ into common/, compress/, decompress/, dictBuilder/, legacy/ 2016-04-22 12:43:18 +02:00
inikep
4699b3be03 Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev 2016-04-21 12:30:58 +02:00
inikep
38654988f3 minor speed improvements 2
bench.c: block size has to be bigger than 32 bytes
zstdcli.c: support for e.g. -B16k -B16m
2016-04-21 12:18:47 +02:00
Yann Collet
e02808ffc5 bumped lib version to 0.6.1
added ZSTD_VERSION_STRING
2016-04-20 22:46:16 +02:00
inikep
c5e1d295ee bench.c: force at least one compression and decompression loop
fix for -i0 with small files
2016-04-19 09:37:59 +02:00
inikep
6d157f1fbe bench.c: fixed rare compression and decompression speed bug
concerns only big files with compression or decompression time longer
than 100 seconds
2016-04-15 16:54:11 +02:00
inikep
4b3c5eed99 removed ZSTD_compressBegin_targetSrcSize 2016-04-14 13:43:51 +02:00
inikep
c70c90e8a3 Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev 2016-04-13 10:48:26 +02:00
inikep
c0d5f4eb2e bench.c: ignore directories from a file list for benchmark 2016-04-13 10:48:04 +02:00
Yann Collet
389648cc6d Fixed : contentSize + copyCCtx() 2016-04-12 19:13:08 +02:00
Yann Collet
541dc7c7d4 Added : fuzzer test, checking contentLength value after copyCCtx() usage 2016-04-12 18:00:20 +02:00
Yann Collet
887e7da785 Fixed copyCCtx() on uninitialized cctx (reported by Oliver Lange) 2016-04-11 20:12:27 +02:00
inikep
8844e21dff Merge remote-tracking branch 'refs/remotes/Cyan4973/dev' into dev 2016-04-11 16:49:27 +02:00
Yann Collet
81e493651a Fixed minor conversion warning 2016-04-11 01:47:10 +02:00
Yann Collet
c51aa6ccce minor refactor 2016-04-11 01:20:14 +02:00
Yann Collet
c456077066 fixed : minor warning on return value 2016-04-11 01:12:32 +02:00
Yann Collet
7928f6f024 Fixed : cli error on stdin + stdout, as detected by Alexey Spiridonov
Added : relevant test case
2016-04-10 20:40:26 +02:00
Yann Collet
ccbba296e1 Fix infinite loop with invalid data (fuzzer test) 2016-04-10 14:42:26 +02:00
Yann Collet
4d008083e6 fixed fullbench link stage 2016-04-09 17:38:53 +02:00
Yann Collet
9990986bdc fixed minor warnings when compiling with gcc -g (aka -std=gnu90) 2016-04-09 16:17:18 +02:00
Yann Collet
029267ab3f Integrated Legacy v0.5.x decoder (provided by @inikep) 2016-04-09 09:42:27 +02:00
Yann Collet
1fce6e0baa Fixed : minor variable isolation 2016-04-08 20:26:33 +02:00
inikep
1eeddde625 clock() is default timer for all platforms except Windows 2016-04-08 16:55:17 +02:00
Yann Collet
ea63bb7b5e converted fuzzer timer to clock_t 2016-04-08 15:25:32 +02:00
Yann Collet
72cc704514 Merge branch 'dev060' of github.com:Cyan4973/zstd into dev060 2016-04-08 02:02:31 +02:00
Yann Collet
0dbf2874ee faster level 1 at 256 KB 2016-04-08 02:02:12 +02:00
Yann Collet
04a4fd638b Merge pull request #164 from inikep/dev
only repcode 0 for lazy, lazy2 and btlazy2 strategies
2016-04-07 20:46:13 +02:00
Yann Collet
9e8b09a7bd Fixed memory initialization issue, reported by Maciej Adamczyk 2016-04-07 19:35:23 +02:00
inikep
64d7bcb0dc only repcode 0 for lazy, lazy2 and btlazy2 strategies 2016-04-07 19:14:09 +02:00
inikep
e47f33f980 reordered code 2016-04-06 20:58:00 +02:00
inikep
5ce00aee37 ZSTD_compressBlock_opt_extDict_generic in progress 2016-04-05 21:03:43 +02:00
inikep
0c7456c5b7 Merge remote-tracking branch 'refs/remotes/Cyan4973/dev060' into dev
# Conflicts:
#	lib/zstd_compress.c
#	lib/zstd_static.h
2016-04-04 14:54:53 +02:00
Yann Collet
8a57b928ba changed contentLog -> chainLog 2016-04-04 13:49:18 +02:00
inikep
19bd48f516 Merge from Cyan4973/dev060 2016-04-04 12:10:00 +02:00
Yann Collet
1535414927 Fixed 32-bits windowLog limitation
Fixed some macro errors in zbufftest
2016-04-04 04:22:53 +02:00
Yann Collet
9bf7016627 minor variable isolation 2016-04-04 03:01:15 +02:00
Yann Collet
fd265ca518 minor cli correction (arguments are const char*) 2016-04-04 02:48:55 +02:00
Yann Collet
38461085d8 code refactorization, for better clarity and reliability 2016-04-04 02:47:20 +02:00
Yann Collet
541cf1993f minor variable isolation 2016-04-04 01:49:30 +02:00
Yann Collet
15bc943201 stronger zbuff synchronization tests 2016-04-04 01:22:26 +02:00
Yann Collet
fe56eb9408 removed unwanted files 2016-04-02 00:21:55 +02:00
Yann Collet
efb18309ef fixed minor visual 32-64bits conversion warning 2016-04-01 18:54:13 +02:00
Yann Collet
27caf2afca minor variable isolation 2016-04-01 15:48:48 +02:00
Yann Collet
51d500425f fixed paramgrill 2016-03-30 20:42:19 +02:00
Yann Collet
3b71925c2d separate params into compressionParams and frameParams 2016-03-30 19:48:05 +02:00
inikep
1c556a3838 ticksPerSecond=0 2016-03-30 10:59:48 +02:00
inikep
33ad251236 removed clock_gettime (not portable) 2016-03-30 09:55:37 +02:00
inikep
4611d11fea added -lrt required by clock_gettime 2016-03-29 15:52:38 +02:00
inikep
4c12f232ec support for QueryPerformanceCounter and clock_gettime 2016-03-29 14:52:13 +02:00
inikep
06f793a3ab fix for BMK_clockSpan on Windows 2016-03-29 11:17:58 +02:00
Yann Collet
b44be74244 Fixed zdict
more dictionary compression tests
2016-03-26 20:52:14 +01:00
Yann Collet
b9151406de fixed 32-bits compatibility 2016-03-26 17:18:11 +01:00
Yann Collet
a5b66e34c7 minor variable isolation
and remove a goto
2016-03-26 01:48:27 +01:00
Yann Collet
b58c685cf7 fixed : fullbench link to deprecate function (wrong prototype) 2016-03-25 20:29:35 +01:00
inikep
5553442376 fixed compilation with ZSTD_NOBENCH 2016-03-25 13:35:33 +01:00
Yann Collet
7cbe79ab25 fixed write overflow found by fuzzer 2016-03-23 22:31:57 +01:00
inikep
eaba91a161 added ZSTD_compressBegin_targetSrcSize 2016-03-23 20:30:26 +01:00
inikep
7adceef974 hashLog3 added to ZSTD_CCtx 2016-03-23 15:53:38 +01:00
inikep
472638c861 added mili_sleep and setHighPriority 2016-03-23 12:28:28 +01:00
Yann Collet
fd69225086 bench : added HIGH_PRIORTY 2016-03-23 02:47:33 +01:00
Yann Collet
be391438ff first working version with both encoder and decode alternate LL + ML coding scheme.
decompression speed highly impacted
2016-03-22 23:19:28 +01:00
inikep
2872b6f01f Merge remote-tracking branch 'refs/remotes/Cyan4973/dev060' into dev
# Conflicts:
#	lib/zstd_compress.c
#	programs/bench.c
2016-03-22 14:38:34 +01:00
Yann Collet
fadda6c875 first prototype with ML encoding scheme (but not yet decoding scheme) 2016-03-22 12:14:26 +01:00
Yann Collet
1dcf930f72 Merge branch 'dev060' into alternateLLcode 2016-03-22 00:29:57 +01:00
Yann Collet
5a854af006 Fixed #153, reported by @thatsafunnyname 2016-03-22 00:22:50 +01:00
Yann Collet
5c71491a46 first working version with alternate LL codes 2016-03-21 02:23:34 +01:00
Yann Collet
6c62b7dfc8 support default LL distribution 2016-03-21 00:39:19 +01:00
Yann Collet
d64f435f63 handles litLength >= 65535 2016-03-21 00:07:42 +01:00
Yann Collet
597847a2ae first emulation 2016-03-20 19:14:22 +01:00
Yann Collet
ecabfe3777 Improved index overflow protection 2016-03-20 16:20:06 +01:00
Yann Collet
de406eebcd minor code refactor 2016-03-20 15:46:10 +01:00
Yann Collet
70e4577179 minor code refactoring 2016-03-19 18:08:32 +01:00
Yann Collet
0d9ce04cd5 minor refactoring 2016-03-19 13:21:08 +01:00
Yann Collet
546c9b1c02 minor refactoring 2016-03-19 12:47:52 +01:00
Yann Collet
d1d210f3fb minor code refactor 2016-03-19 12:12:07 +01:00
Yann Collet
f3120413cc Fixed : decoder error on erroneous data 2016-03-19 11:40:19 +01:00
Yann Collet
1d1ae40258 bench.c : implemented single pass mode -i0 2016-03-17 19:51:02 +01:00
Yann Collet
699b14db1b bench : changed timer to clock_t, reduced timeloop to 1sec 2016-03-17 19:37:33 +01:00
Yann Collet
512220a82f fullbench : restored -b31 (decodeLiterals) and -b32 (decodeSeqHeaders) 2016-03-17 16:42:16 +01:00
Yann Collet
cdabd4a2a6 switched fullbench time measurement to clock_t from <time.h> 2016-03-17 16:18:36 +01:00
Yann Collet
31922d7931 Added : ability to test direct-streaming functions ZSTD_compressContinue() and ZSTD_decompressContinue() 2016-03-16 16:05:18 +01:00
Yann Collet
569b81adb1 changed BLOCKSIZE into ZSTD_BLOCKSIZE_MAX 2016-03-16 15:26:51 +01:00
Yann Collet
69afc716d3 minor refactoring, from char* to const char* 2016-03-15 21:44:39 +01:00
Yann Collet
f141eaa211 fullbench : ZSTD_decompress is now option 2 2016-03-15 21:13:52 +01:00
Yann Collet
34b20ec2c6 fullbench can measure speed of zbuff 2016-03-15 20:47:23 +01:00
Yann Collet
346bffbc68 Added frame content size test within fuzzer 2016-03-15 15:24:52 +01:00
Yann Collet
09b21ee2f6 fix fileio bug with new zbuff
simplified zbuff decoding
2016-03-15 12:56:03 +01:00
inikep
d700a1a8b9 ZSTD_setAdditionalParam 2016-03-15 12:18:44 +01:00
inikep
5fdd0b46d3 added additionalParam 2016-03-14 19:51:11 +01:00
Yann Collet
886274bc79 Merge pull request #147 from Cyan4973/dev
Decompression error return code, by @chipturner
2016-03-14 18:41:24 +01:00
inikep
e9554b73cc -r# : test all compression levels from -bX to # 2016-03-14 18:10:30 +01:00
Yann Collet
97406c9b2c Added test to check decompression error return code 2016-03-14 17:05:40 +01:00
inikep
44af12deb1 removed DEFAULT_CHUNKSIZE 2016-03-14 15:59:04 +01:00
Chip Turner
9da7f86591 use remove instead of unlink 2016-03-14 07:44:59 -07:00
inikep
c034b73f8f benchResult_t changed to double 2016-03-14 13:13:42 +01:00
inikep
4e26bb69c7 bench.c can generate a log file with average values 2016-03-14 12:48:51 +01:00
Chip Turner
6de382cdbb propagate errors when decompressing; also unlink dstfile if we create it but fail
to successfully compress or decompress
2016-03-13 22:33:11 -07:00
Yann Collet
27d3dad751 benchmark mode : automated cooling (overheat protection) 2016-03-11 13:41:20 +01:00
Yann Collet
8a1d1a6a6c implemented --ultra mode protection 2016-03-10 21:02:25 +01:00
inikep
aff4ba1714 hashLog3 removed from paramgrill 2016-03-10 15:45:21 +01:00
Yann Collet
2e91dde43e improved memory size evaluation by paramgrill 2016-03-08 12:22:11 +01:00
Yann Collet
dd54bbc184 Fixed large NbSeq > 32 K
Added a test in Fuzzer to check NbSeq > 32 K
2016-03-08 02:35:34 +01:00
Yann Collet
370b08e840 fix compression ratio for blocks <= 16 KB 2016-03-08 00:03:59 +01:00
Yann Collet
4ba85344e3 added test to generate lots of small sequences (3-bytes) 2016-03-07 20:01:45 +01:00
Yann Collet
4ec2998b1f Added zeroes test (#137) 2016-03-04 19:09:28 +01:00
Yann Collet
a997654670 Merge pull request #136 from inikep/dev
merging mml3 mode
2016-03-01 17:31:03 +01:00
inikep
59493e8669 fixed paramgrill 2016-02-25 19:15:08 +01:00
Yann Collet
7de4f9fd81 minor cosmetic 2016-02-23 21:34:18 +01:00
Yann Collet
2cf6d662a8 fixed #131 2016-02-23 21:21:29 +01:00
Yann Collet
728c8fc995 longer pgo tests 2016-02-17 17:04:12 +01:00
Yann Collet
2673076b3d fix zstd-frugal 2016-02-17 13:40:11 +01:00
Yann Collet
9abc358df6 added : test for too large CLevel 2016-02-16 16:35:28 +01:00
Yann Collet
6aa896adc6 zstd cli : control maximum compression level 2016-02-16 16:33:48 +01:00
Yann Collet
2d08b098ef Updated man zstd
Added `-t` | `--test` to zstd cli
Added a few long commands, compatible with gzip
2016-02-16 14:42:08 +01:00
Yann Collet
459a6b712f Fix corner case multiple files bug
Added test cases
2016-02-15 20:37:23 +01:00
Yann Collet
accfd80c37 Added : option -t to test compressed files integrity 2016-02-15 19:33:16 +01:00
Yann Collet
e93add0439 Removed if (matchIndex >= current) return 0; as recommended by @inikep 2016-02-15 17:44:14 +01:00
Yann Collet
cefef8cde7 Change : zstd_opt_bt => zstd_btopt 2016-02-15 07:21:54 +01:00
Yann Collet
8154c3d7e2 added simple one file test 2016-02-13 03:12:10 +01:00
Yann Collet
e8bd73df80 Fixed : error when compressing one file 2016-02-13 03:09:48 +01:00
Yann Collet
23e8aee224 Introduced new compression level settings
Changed position of parameter TargetLength
2016-02-13 02:08:46 +01:00
Yann Collet
6f3acbac0d notificationLevel into ZDICT_param_t 2016-02-12 20:19:48 +01:00
Yann Collet
62ae5fb0d2 zstd_buffered => zbuff 2016-02-12 18:59:11 +01:00
Yann Collet
f4c9d75370 dictBuilder => zdict 2016-02-12 18:45:02 +01:00
Yann Collet
1f1f239ed9 zstd cli can decompress multiple files with no specific suffix condition into stdout 2016-02-12 18:33:26 +01:00
Yann Collet
f062436fa6 cli : added ability to compress multiple files into stdout (-c) 2016-02-12 15:56:46 +01:00
Yann Collet
492a9bb88e fixed Valgrind tests 2016-02-12 03:52:37 +01:00
Yann Collet
883a67eee2 fixed cmake 2016-02-12 03:50:05 +01:00
Yann Collet
c8da2c9f8f updated tests 2016-02-12 02:56:27 +01:00
Yann Collet
71eafdd23f Integrated dictionary builder into zstd cli 2016-02-12 02:31:57 +01:00
Yann Collet
04b12d8bcb paramgrill can select manually targetLength
new compression levels
2016-02-11 06:23:24 +01:00
Yann Collet
bd828d9cd1 changed : sufficientLength => targetLength 2016-02-11 04:38:55 +01:00
Yann Collet
4488661678 minor cosmetics 2016-02-11 04:17:50 +01:00
Yann Collet
b79a0b34f3 paramgrill supports sufficientLength
stronger variation for ZSTD_opt
2016-02-10 17:07:37 +01:00
Yann Collet
70e8c389f1 Refactoring for portability 2016-02-10 13:37:52 +01:00
Yann Collet
ee602ce68c Added btlazy2 to short tests 2016-02-08 18:46:26 +01:00
Yann Collet
521b0108dd Added PowerPC tests with Qemu user more
Shortened tests for emulated platforms
removed date from CLI for reproducibility
2016-02-08 01:27:59 +01:00
Yann Collet
648959a9ed new : ARM tests with Qemu user-mode 2016-02-07 23:58:32 +01:00
Yann Collet
ef37063503 fix big-endian compression error 2016-02-07 03:53:12 +01:00
Yann Collet
45ff4309fd Updated documentation 2016-02-05 15:24:57 +01:00
Yann Collet
464fa996e9 added v0.4 legacy support 2016-02-03 01:09:46 +01:00
Yann Collet
2ce4923238 modified buffer management rules 2016-02-02 14:36:49 +01:00
Yann Collet
e93d6ced17 minor compression gain 2016-01-31 00:58:06 +01:00
Yann Collet
fd416f1eaf added : ZSTD_compress_usingPreparedCCtx() 2016-01-30 03:14:15 +01:00
Yann Collet
fb810d6053 changed dictionary format 2016-01-28 00:21:13 +01:00
Yann Collet
1c8e194297 modified streaming compression API 2016-01-26 16:31:22 +01:00
Yann Collet
7b51a2948f modified streaming decompression API 2016-01-26 15:58:49 +01:00
Yann Collet
b923f65076 introduced dictionary format 2016-01-26 03:14:20 +01:00
Yann Collet
59d1f79768 variable litblock header size 2016-01-23 19:28:41 +01:00
Yann Collet
977f1f3600 modified error system, following suggestions by @nemequ 2016-01-21 15:38:47 +01:00
Yann Collet
03a6dab721 bench : more accurate block nb in error report 2016-01-21 02:21:17 +01:00
Yann Collet
1840d6af33 bench pay attention to variable block sizes 2016-01-20 15:39:06 +01:00
Yann Collet
2630a5eadc benchmark uses ZSTD_duplicateCCtx() 2016-01-14 19:13:22 +01:00
Yann Collet
b012510d9f dictionary with block API 2016-01-09 02:00:10 +01:00
Yann Collet
bf42c8e5d8 block-level API 2016-01-09 01:08:23 +01:00
Yann Collet
600962711d added duplication tests 2016-01-08 17:27:50 +01:00
Yann Collet
ecd651bd91 added ZSTD_duplicateCCtx() 2016-01-07 15:35:18 +01:00
Yann Collet
1fdd82312d Fixed : strict aliasing warnings in legacy decoders 2016-01-06 12:35:42 +01:00