soft-decision decoding