refactoring 23.12