


from statistics import mean, stdev




def 						__SCREAMING_SNAKE_CASE       (					lowercase_			,					lowercase_ = 3			)		->    list:




						'''simple docstring'''







						__UpperCAmelCase :       str  						=  min(lowercase_			)
						__UpperCAmelCase :       List[Any]  						=  max(lowercase_			)
						# normalize data
						return [round((x - x_min) / (x_max - x_min)			,					lowercase_			) for x in data]





def 						__SCREAMING_SNAKE_CASE       (					lowercase_			,					lowercase_ = 3			)		->    list:




						'''simple docstring'''







						__UpperCAmelCase :       Optional[int]  						=  mean(lowercase_			)
						__UpperCAmelCase :       List[str]  						=  stdev(lowercase_			)
						# standardize data
						return [round((x - mu) / (sigma)			,					lowercase_			) for x in data]





from __future__ import annotations

from collections.abc import Generator

import requests
from bsa import BeautifulSoup

lowerCAmelCase							=						"""https://www.indeed.co.in/jobs?q=mobile+app+development&l="""




def 						__SCREAMING_SNAKE_CASE       (					lowercase_ = "mumbai"			)		->    Generator[tuple[str, str], None, None]:




						'''simple docstring'''







						__UpperCAmelCase :       List[Any]  						=  BeautifulSoup(requests.get(url + location			).content			,					'''html.parser'''			)
						# This attribute finds out all the specifics listed in a job
						for job in soup.find_all('''div'''			,					attrs={'''data-tn-component''': '''organicJob'''}			):
												__UpperCAmelCase :       str  						=  job.find('''a'''			,					attrs={'''data-tn-element''': '''jobTitle'''}			).text.strip()
												__UpperCAmelCase :       List[str]  						=  job.find('''span'''			,					{'''class''': '''company'''}			).text.strip()
												yield job_title, company_name


if __name__ == "__main__":
				for i, job in enumerate(fetch_jobs("""Bangalore"""), 1):
								print(F'Job {i:>2} is {job[0]} at {job[1]}')

