refactored all cli options