reverse order of default/opt rule handling