struct TraversalResult { int leftResult; // result from left subtree int rightResult; // result from right subtree int finalResult; // combined result };