


'''simple docstring'''



import importlib
import sys
from argparse import REMAINDER, ArgumentParser
from pathlib import Path

import torch_xla.distributed.xla_multiprocessing as xmp




def      _a     (						):





     '''simple docstring'''






     __UpperCAmelCase     :			Any  							=      ArgumentParser(
         description=(
             '''PyTorch TPU distributed training launch '''
             '''helper utility that will spawn up '''
             '''multiple distributed processes'''
         )  )

     # Optional arguments for the launch helper
     parser.add_argument('''--num_cores'''      , type=__lowerCAmelCase      , default=1      , help='''Number of TPU cores to use (1 or 8).'''  )

     # positional
     parser.add_argument(
         '''training_script'''      , type=__lowerCAmelCase      , help=(
             '''The full path to the single TPU training '''
             '''program/script to be launched in parallel, '''
             '''followed by all the arguments for the '''
             '''training script'''
         )      , )

     # rest from the training program
     parser.add_argument('''training_script_args'''      , nargs=__lowerCAmelCase  )

     return parser.parse_args()




def      _a     (						):





     '''simple docstring'''






     __UpperCAmelCase     :			Any  							=      parse_args()

     # Import training_script as a module.
     __UpperCAmelCase     :			Dict  							=      Path(args.training_script  )
     sys.path.append(str(script_fpath.parent.resolve()  )  )
     __UpperCAmelCase     :			str  							=      script_fpath.stem
     __UpperCAmelCase     :			Dict  							=      importlib.import_module(__lowerCAmelCase  )

     # Patch sys.argv
     __UpperCAmelCase     :			Any  							=      [args.training_script] + args.training_script_args + ['''--tpu_num_cores''', str(args.num_cores  )]
     xmp.spawn(mod._mp_fn      , args=()      , nprocs=args.num_cores  )


if __name__ == "__main__":
   main()



'''simple docstring'''



import requests

__UpperCAmelCase      :Union[str, Any]			    =       "https://newsapi.org/v1/articles?source=bbc-news&sortBy=top&apiKey="




def      _a     (						_lowercase :     str  ):





     '''simple docstring'''






     __UpperCAmelCase     :			Union[str, Any]  							=      requests.get(_NEWS_API + bbc_news_api_key  ).json()
     # each article in the list is a dict
     for i, article in enumerate(bbc_news_page['''articles''']      , 1  ):
          print(F'{i}.) {article["title"]}'  )


if __name__ == "__main__":
      fetch_bbc_news(bbc_news_api_key="<Your BBC News API key goes here>")