updated f/w decoding