input: 
  from bs4 import BeautifulSoup
  import requests
  
  def extract_urls(webpage: str) -> list:
      """ Extracts and returns a list of URLs from the given webpage.
      The function uses BeautifulSoup to parse the webpage and find all 'a' tags,
      then extracts the URLs in the 'href' attribute of each tag.
      >>> extract_urls("https://example.com")
      ['https://example.com/page1', 'https://example.com/page2']
      """
      # Get the web page
      response = requests.get(webpage)
      
      # Parse the web page
      soup = BeautifulSoup(response.content, 'html.parser')
      
      # Find all 'a' tags
      links = soup.find_all('a')
      
      # Extract the URLs in the 'href' attribute
      urls = [link.get('href') for link in links if link.get('href')]
      
      return urls
  
output:     # Filter out non-absolute URLs and prepend the base URL if necessary
      base_url = webpage.split('//')[0] + '//' + webpage.split('//')[1].split('/')[0]
      urls = [url if url.startswith('http') else base_url + url for url in urls]
      
      return urls