input: Write a function to calculate the sum of all elements in a binary tree. If the given root is None then return 0.
  
  def sum_tree(root):
      if root is None:
          return 0
  
      return root.val + sum_tree(root.left) + sum_tree(root.right)
  
  assert sum_tree(None) == 0
  assert sum_tree(TreeNode(1, TreeNode(2, TreeNode(4), TreeNode(5)), TreeNode(3))) == 15
  assert sum_tree(TreeNode(1, TreeNode(2), TreeNode(3))) == 6
  assert sum_tree(TreeNode(0)) == 0
  assert sum_tree(TreeNode(1, None, TreeNode(2))) == 3
output: def sum_tree(root):
      if root is None:
          return 0
  
      return root.val + sum_tree(root.left) + sum_tree(root.right)