Fixed result size bug in decoding (padding uses 2 bytes, not 1 byte). Added benchmarks.