Maybe both addOption() can share implementation