input: Write a function in C# that converts a given Python program to a C# program. If the given Python program is empty, return an empty string.
  assert convert_python_to_csharp("def power(x, y):\n    if y == 0:\n        return 1\n    else:\n        return x * power(x, y - 1)") == "public int Power(int x, int y)\n{\n    if (y == 0)\n    {\n        return 1;\n    }\n    else\n    {\n        return x * Power(x, y - 1);\n    }\n}"
  assert convert_python_to_csharp("") == ""
output: def convert_python_to_csharp(python_code):
      if not python_code:
          return ""
      lines = python_code.split('\n')
      csharp_code = []
      for line in lines:
          if line.startswith("def "):
              func_name = line[4:line.index('(')]
              params = line[line.index('('):line.index(')')+1]
              return_type = "int" if "return" in python_code else "void"
              csharp_code.append(f"public {return_type} {func_name.capitalize()}{params}")
              csharp_code.append("{")
          elif line.startswith("    if "):
              csharp_code.append(f"    if {line[7:]}")
              csharp_code.append("    {")
          elif line.startswith("    else:"):
              csharp_code.append("    }")
              csharp_code.append("    else")
              csharp_code.append("    {")
          elif line.startswith("        return "):
              csharp_code.append(f"        return {line[14:]};")
          elif line.startswith("    return "):
              csharp_code.append(f"    return {line[10:]};")
      csharp_code.append("    }")
      csharp_code.append("}")
      return '\n'.join(csharp_code)