receive errors via text
refactoring