





from math import factorial






def    _A	(   lowerCamelCase = 20 ):
   a__						:    List[str]   		=	2 * n  # middle entry of odd rows starting at row 3 is the solution for n = 1,
   # 2, 3,...
   a__						:    Union[str, Any]   		=	n // 2

   return int(factorial(lowerCamelCase ) / (factorial(lowerCamelCase ) * factorial(n - k )) )


if __name__ == "__main__":
  import sys

  if len(sys.argv) == 1:
    print(solution(2_0))
  else:
    try:
      SCREAMING_SNAKE_CASE__							:      Union[str, Any]         =    int(sys.argv[1])
      print(solution(n))
    except ValueError:
      print("""Invalid entry - please enter a number.""")



"""simple docstring"""






import os
from tempfile import TemporaryDirectory
from unittest import TestCase

import pytest
from absl.testing import parameterized

from datasets import config
from datasets.arrow_reader import HF_GCP_BASE_URL
from datasets.builder import DatasetBuilder
from datasets.dataset_dict import IterableDatasetDict
from datasets.iterable_dataset import IterableDataset
from datasets.load import dataset_module_factory, import_main_class
from datasets.utils.file_utils import cached_path


_lowercase							=				[
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.de'''},
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.en'''},
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.fr'''},
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.frr'''},
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.it'''},
    {'''dataset''': '''wikipedia''', '''config_name''': '''20220301.simple'''},
    {'''dataset''': '''snli''', '''config_name''': '''plain_text'''},
    {'''dataset''': '''eli5''', '''config_name''': '''LFQA_reddit'''},
    {'''dataset''': '''wiki40b''', '''config_name''': '''en'''},
    {'''dataset''': '''wiki_dpr''', '''config_name''': '''psgs_w100.nq.compressed'''},
    {'''dataset''': '''wiki_dpr''', '''config_name''': '''psgs_w100.nq.no_index'''},
    {'''dataset''': '''wiki_dpr''', '''config_name''': '''psgs_w100.multiset.no_index'''},
    {'''dataset''': '''natural_questions''', '''config_name''': '''default'''},
]



def      lowerCAmelCase__			(		__magic_name__=True      )						->int:
			if with_config:
						return [
						    {
						        "testcase_name": d["dataset"] + "/" + d["config_name"],
						        "dataset": d["dataset"],
						        "config_name": d["config_name"],
						    }
						    for d in DATASETS_ON_HF_GCP
						]
			else:
						return [
						    {"testcase_name": dataset, "dataset": dataset} for dataset in {d["dataset"] for d in DATASETS_ON_HF_GCP}
						]

@parameterized.named_parameters(list_datasets_on_hf_gcp_parameters(with_config=__a       )       )
class 					__a     ( __a       ):



							'''simple docstring'''







							_lowerCamelCase					:			int          =   None
							_lowerCamelCase					:			int          =   None
							def   SCREAMING_SNAKE_CASE						(     self  ,    _lowerCamelCase  ,    _lowerCamelCase       )			->							Optional[Any]:




										'''simple docstring'''
										with TemporaryDirectory() as tmp_dir:
													__lowercase       =       dataset_module_factory(_lowerCamelCase  ,    cache_dir=_lowerCamelCase       )

													__lowercase       =       import_main_class(dataset_module.module_path  ,    dataset=_lowerCamelCase       )

													__lowercase       =       builder_cls(
													    cache_dir=_lowerCamelCase  ,    config_name=_lowerCamelCase  ,    hash=dataset_module.hash  ,    )

													__lowercase       =       "/".join(
													    [
													        HF_GCP_BASE_URL,
													        builder_instance._relative_data_dir(with_hash=_lowerCamelCase       ).replace(os.sep  ,    "/"       ),
													        config.DATASET_INFO_FILENAME,
													    ]       )
													__lowercase       =       cached_path(_lowerCamelCase  ,    cache_dir=_lowerCamelCase       )
													self.assertTrue(os.path.exists(_lowerCamelCase       )       )





@pytest.mark.integration
def      lowerCAmelCase__			(		__magic_name__      )						->str:
			__lowercase       =       tmp_path_factory.mktemp("test_hf_gcp"      ) / "test_wikipedia_simple"
			__lowercase       =       dataset_module_factory("wikipedia"			,   cache_dir=__magic_name__      )
			__lowercase       =       import_main_class(dataset_module.module_path      )
			__lowercase       =       builder_cls(
			    cache_dir=__magic_name__			,   config_name="20220301.frr"			,   hash=dataset_module.hash			,   )
			# use the HF cloud storage, not the original download_and_prepare that uses apache-beam
			__lowercase       =       None
			builder_instance.download_and_prepare()
			__lowercase       =       builder_instance.as_dataset()
			assert ds







@pytest.mark.integration
def      lowerCAmelCase__			(		__magic_name__      )						->Any:
			__lowercase       =       dataset_module_factory("wikipedia"			,   cache_dir=__magic_name__      )
			__lowercase       =       import_main_class(dataset_module.module_path			,   dataset=__magic_name__      )
			__lowercase       =       builder_cls(
			    cache_dir=__magic_name__			,   config_name="20220301.frr"			,   hash=dataset_module.hash			,   )
			__lowercase       =       builder_instance.as_streaming_dataset()
			assert ds
			assert isinstance(__magic_name__			,   __magic_name__      )
			assert "train" in ds
			assert isinstance(ds["train"]			,   __magic_name__      )
			assert next(iter(ds["train"]      )      )





