Add debug option
Change class structure
refactoring
refactoring