#2: accurate decoding