add first compress solution
refactoring