Canonical Compression Algorithm