add option parser