add ch1 refactoring.