comment decode optimization, leaving aside for now