A path is any sequence of nodes connected by edges, where each node appears at most once; it need not pass through the root. Given the root of a binary tree, return the maximum possible sum of node values along such a path.