Node? childAtPath(Path path) { if (path.isEmpty) { return this; } final index = path.first; final child = childAtIndexOrNull(index); return child?.childAtPath(path.sublist(1)); }