One Class Implemented for different options