input: Write a function to implement a function in Python that takes a Huffman tree and drops all its leaf nodes. If the node is not None and doesn't have any children, it should be removed. The function should recursively call itself on the left and right subtrees and return the head of the modified tree.
  assert dropLeafNodes(HuffmanNode(1, HuffmanNode(2, HuffmanNode(4), HuffmanNode(5)), HuffmanNode(3, HuffmanNode(6), HuffmanNode(7)))) == HuffmanNode(1, HuffmanNode(2, None, None), HuffmanNode(3, None, None))
  assert dropLeafNodes(HuffmanNode(10, HuffmanNode(20, HuffmanNode(40), HuffmanNode(50)), None)) == HuffmanNode(10, HuffmanNode(20, None, None), None)
  assert dropLeafNodes(None) == None
  assert dropLeafNodes(HuffmanNode(1)) == None
output: def dropLeafNodes(node):
      if node is None:
          return None
      if node.left is None and node.right is None:
          return None
      node.left = dropLeafNodes(node.left)
      node.right = dropLeafNodes(node.right)
      return node