input: Write a python function to simulate a fight between a hero and a villain where the hero can attack, heal, or run away.
  assert fight_simulation(1)== "You have slain the Evil Wizard!" or "You have been defeated!"
  assert fight_simulation(2) in ["You attack the Evil Wizard!", "You missed!", "You hit the Evil Wizard!"]
  assert fight_simulation(3) == "You run away from the Evil Wizard!"
output: def fight_simulation(action):
      import random
      hero_health = 100
      villain_health = 100
      
      if action == 1:  # Hero attacks
          attack_outcome = random.choice(["miss", "hit"])
          if attack_outcome == "miss":
              return "You missed!"
          else:
              villain_health -= random.randint(10, 30)
              if villain_health <= 0:
                  return "You have slain the Evil Wizard!"
              else:
                  return "You hit the Evil Wizard!"
      elif action == 2:  # Hero heals
          hero_health += random.randint(10, 30)
          return "You healed yourself!"
      elif action == 3:  # Hero runs away
          return "You run away from the Evil Wizard!"
      else:
          return "Invalid action"