-- remove override function deserialize(input:Dynamic)
-- add override function deserialize(input:Dynamic)
-- minor refactor.
-- add RewardProto