    and expects targetOutputSize <= dstCapacity.
           It effectively stops decoding on reaching targetOutputSize,
           so dstCapacity is kind of redundant.
           This is because in a previous version of this function,
           decoding operation would not "break" a sequence in the middle.
           As a consequence, there was no guarantee that decoding would stop at exactly targetOutputSize,
           it could write more bytes, though only up to dstCapacity.
           Some "margin" use