Added factory for choice