I was going down this line initially and thought this could be enum but while encoding/decoding i always need the ineteger value and seemed like these conversions don't have lot of benefit, except it would have been easier to write toString()