basic opt parse