refactored via Resharper cleanup