add decoding mechanism, vulerable