To refactor