Redid Porject Design

Built solid base clase