finish main project
refactor and change class method