refactoring to make the reasoning process in the paper easier