poprawiony refactoring; ciąg dlaszy dokumentacji