#964 - refactoring implementation