some refactoring(clarifications)