add support for multiple compression algorithms