input: Write a python function to fetch HTML content from a given URL and convert it into a pandas DataFrame.
  assert not fetch_html_to_df('http://www.example.com').empty
  assert isinstance(fetch_html_to_df('http://www.example.com'), pd.DataFrame)
  assert fetch_html_to_df('http://www.example.com').shape[1] > 0
output: import pandas as pd
  import requests
  from bs4 import BeautifulSoup
  
  def fetch_html_to_df(url):
      response = requests.get(url)
      soup = BeautifulSoup(response.content, 'html.parser')
      tables = soup.find_all('table')
  
      # Extract the first table found
      if tables:
          table_html = str(tables[0])
          df = pd.read_html(table_html)[0]
          return df
      else:
          return pd.DataFrame()