[TASK] refactoring 1/2
[TASK] refactoring 2/2