public static long Part1() { var root = AreaTraversal <Day15Cell> .Bfs(area, (0, 0), c => c == Day15Cell.Open); var oxygenNode = AreaTraversal <Day15Cell> .FindPosition(MazeGenerator.OxygenSystemPosition, root); return(AreaTraversal <Day15Cell> .DepthOf(oxygenNode)); }