updated option evaluation logic