refactor code
add new class