
'''simple docstring'''





from urllib.error import HTTPError

from bsa import BeautifulSoup
from requests import exceptions, get

a__						:				Dict           =    "https://www.wellrx.com/prescriptions/{0}/{1}/?freshSearch=true"





def     snake_case							(						UpperCAmelCase ,					UpperCAmelCase		)->     list | None:







      """simple docstring"""

      try:
            # Has user provided both inputs?
            if not drug_name or not zip_code:
                  return None

            __A    		=     BASE_URL.format(UpperCAmelCase ,					UpperCAmelCase		)
            __A    		=     get(UpperCAmelCase		)

            # Is the response ok?
            response.raise_for_status()

            # Scrape the data using bs4
            __A    		=     BeautifulSoup(response.text ,					'html.parser'		)

            # This list will store the name and price.
            __A    		=     []

            # Fetch all the grids that contains the items.
            __A    		=     soup.find_all('div' ,					{'class': 'grid-x pharmCard'}		)
            if grid_list and len(UpperCAmelCase		) > 0:
                  for grid in grid_list:
                        # Get the pharmacy price.
                        __A    		=     grid.find('p' ,					{'class': 'list-title'}		).text

                        # Get price of the drug.
                        __A    		=     grid.find('span' ,					{'p', 'price price-large'}		).text

                        pharmacy_price_list.append(
                            {
                                'pharmacy_name': pharmacy_name,
                                'price': price,
                            }		)

            return pharmacy_price_list

      except (HTTPError, exceptions.RequestException, ValueError):
            return None


if __name__ == "__main__":
 # Enter a drug name and a zip code
 a__						:				Optional[int]           =    input("Enter drug name: ").strip()
 a__						:				Union[str, Any]           =    input("Enter zip code: ").strip()

 a__						:				list | None           =    fetch_pharmacy_and_price_list(
     drug_name, zip_code
 )

 if pharmacy_price_list:
  print(f'''\nSearch results for {drug_name} at location {zip_code}:''')
  for pharmacy_price in pharmacy_price_list:
   a__						:				Optional[int]           =    pharmacy_price["pharmacy_name"]
   a__						:				Dict           =    pharmacy_price["price"]

   print(f'''Pharmacy: {name} Price: {price}''')
 else:
  print(f'''No results found for {drug_name}''')








'''simple docstring'''





from __future__ import annotations





def     snake_case							(						UpperCAmelCase		)->     List[Any]:







      """simple docstring"""
      global graph, reversed_graph, scc, component, visit, stack
      if visit[u]:
            return
      __A    		=     True
      for v in graph[u]:
            dfs(UpperCAmelCase		)
      stack.append(UpperCAmelCase		)





def     snake_case							(						UpperCAmelCase		)->     List[Any]:







      """simple docstring"""
      global graph, reversed_graph, scc, component, visit, stack
      if visit[u]:
            return
      __A    		=     True
      component.append(UpperCAmelCase		)
      for v in reversed_graph[u]:
            dfsa(UpperCAmelCase		)





def     snake_case							(						)->     Any:







      """simple docstring"""
      global graph, reversed_graph, scc, component, visit, stack
      for i in range(UpperCAmelCase		):
            dfs(UpperCAmelCase		)
      __A    		=     [False] * n
      for i in stack[::-1]:
            if visit[i]:
                  continue
            __A    		=     []
            dfsa(UpperCAmelCase		)
            scc.append(UpperCAmelCase		)
      return scc


if __name__ == "__main__":
 # n - no of nodes, m - no of edges
 a__    ,						a__						:				Tuple           =    list(map(int, input().strip().split()))

 a__						:				list[list[int]]           =    [[] for _ in range(n)]  # graph
 a__						:				list[list[int]]           =    [[] for i in range(n)]  # reversed graph
 # input graph data (edges)
 for _ in range(m):
  a__    ,						a__						:				Tuple           =    list(map(int, input().strip().split()))
  graph[u].append(v)
  reversed_graph[v].append(u)

 a__						:				list[int]           =    []
 a__						:				list[bool]           =    [False] * n
 a__						:				list[int]           =    []
 a__						:				list[int]           =    []
 print(kosaraju())






