optional coding structure