lzma implementation