inflate / deflate: http://www.perlmonks.org/?node_id=374655