parameters options amounts refactoring