input: Write a function to find the maximum value within a nested dictionary.
  
  def findMaxValue(dict):
      max_val = None
      for key, value in dict.items():
          if isinstance(value, dict):
              max_val = max(findMaxValue(value), max_val)
          else:
              max_val = max(value, max_val)
      return max_val
  
  sample_dict = {
      "key1": {
          "value1": 10,
          "value2": 20
      },
      "key2": {
          "value3": 40
      },
  }
  
  assert findMaxValue(sample_dict) == 40
  assert findMaxValue({}) == None
  assert findMaxValue({"a": 5, "b": 10, "c": 15}) == 15
  assert findMaxValue({"x": {"y": {"z": 100}}}) == 100
  assert findMaxValue({"i": {"j": 25, "k": {"l": 30}}}) == 30
output: def findMaxValue(dict):
      max_val = None
      for key, value in dict.items():
          if isinstance(value, dict):
              max_val = max(findMaxValue(value), max_val)
          else:
              max_val = max(value, max_val)
      return max_val