working on codec classes