
'''simple docstring'''
def  __SCREAMING_SNAKE_CASE				(  _SCREAMING_SNAKE_CASE = 6008_5147_5143				):

							try:
														_snake_case       =  int(_SCREAMING_SNAKE_CASE				)
							except (TypeError, ValueError):
														raise TypeError("""Parameter n must be int or castable to int."""				)
							if n <= 0:
														raise ValueError("""Parameter n must be greater than or equal to one."""				)
							_snake_case       =  2
							_snake_case       =  0
							if n == 2:
														return 2
							while n > 2:
														while n % i != 0:
																					i += 1
														_snake_case       =  i
														while n % i == 0:
																					_snake_case       =  n // i
														i += 1
							return int(_SCREAMING_SNAKE_CASE				)


if __name__ == "__main__":
				print(f'''{solution() = }''')

'''simple docstring'''
from urllib.parse import quote

import pytest

from datasets.utils.hub import hf_hub_url






@pytest.mark.parametrize("""repo_id"""							, ["""canonical_dataset_name""", """org-name/dataset-name"""]				)
@pytest.mark.parametrize("""path"""							, ["""filename.csv""", """filename with blanks.csv"""]				)
@pytest.mark.parametrize("""revision"""							, [None, """v2"""]				)
def  __SCREAMING_SNAKE_CASE				(  _SCREAMING_SNAKE_CASE							, _SCREAMING_SNAKE_CASE							, _SCREAMING_SNAKE_CASE				):
							_snake_case       =  hf_hub_url(repo_id=_SCREAMING_SNAKE_CASE							, path=_SCREAMING_SNAKE_CASE							, revision=_SCREAMING_SNAKE_CASE				)
							assert url == f"""https://huggingface.co/datasets/{repo_id}/resolve/{revision or "main"}/{quote(_SCREAMING_SNAKE_CASE				)}"""