I see you're using $decode, I'd reccomend you change that for something else, Seeing as it's been broken by intent, due to abuse.
i.e., you can $encode() something, but not $decode() it anymore...