protected override Solution OnExecute(string source) { var rawMaze = _mazeSource.GetMaze(source); _mazeValidator.Validate(rawMaze); var maze = _mazeTransformer.Execute(rawMaze); return(_mazePathfinderAlgorithmExecutor.Execute(maze)); }