DESCRIPTION
    LZF is an extremely fast (not that much slower than a pure memcpy)
    compression algorithm. It is ideal for applications where you want to
    save *some* space but not at the cost of speed. It is ideal for
    repetitive data as well. The module is self-contained and very small.

    It's written in ISO-C with no external dependencies other than what
    C provides and can easily be #include'd into your code, no makefile
    changes or library builds requires.

    A C♯ implementation without external dependencies is available, too.

    I do not know for certain whether any patents in any countries apply
    to this algorithm, but at the moment it is believed that it is free
    from any patents. More importantly, it is also free to use in every
    software package (see LICENSE).

    See the lzf.h file for details on how the functions in this
    mini-library are to be used.

    NOTE: This package contains a very bare-bones command-line utility
    which is neither optimized for speed nor for compression. This library
    is really intended to be used inside larger programs.

AUTHOR
    This library was written by Marc Lehmann <schmorp@schmorp.de> (See also
    http://software.schmorp.de/pkg/liblzf).


