'optional' should be 'p_optional'