class newNode: 
    def __init__(self, key): 
        self.key = key  
        self.left = self.right = None
def minimumDistanceHelper(root, node, closest):
    if(root is None):
        return
    
    if(root.left is None and root.right is None):
        if(abs(closest-node.key)>abs(node.key-root.key)):
            closest = root.key
            print("closest:", closest)
        
    else:
        minimumDistanceHelper(root.left, node, closest)
        minimumDistanceHelper(root.right, node,closest)
def minimumDistance(root, node):
    if(root is None):
        return float('inf')
    closest = root.key
    minimumDistanceHelper(root, node, closest)
    return closest
# Driver Code 
if __name__ == '__main__': 
    # Let us create Binary Tree shown 
    # in above example  
    root = newNode(10)  
    root.left = newNode(12)  
    root.right = newNode(13)  
    root.right.left = newNode(14)  
    root.right.right = newNode(15)  
    root.right.left.left = newNode(21)  
    root.right.left.right = newNode(22)  
    root.right.right.left = newNode(23)  
    root.right.right.right = newNode(24)  
    root.right.left.left.left = newNode(1)  
    root.right.left.left.right = newNode(2)  
    root.right.left.right.left = newNode(3)  
    root.right.left.right.right = newNode(4)  
    root.right.right.left.left = newNode(5)  
    root.right.right.left.right = newNode(6)  
    root.right.right.right.left = newNode(7)  
    root.right.right.right.right = newNode(8)  
    x = root.right  
    print("The closest leaf to the node with value", x.key, "is at a distance of",  minimumDistance(root, x)) 
I want to print closest leaf node to a particular node in a binary tree. I am getting the correct answer in the function defined but I am not able to return that answer. Link to question: https://www.geeksforgeeks.org/closest-leaf-to-a-given-node-in-binary-tree/
 
     
    