


import platform
from argparse import ArgumentParser

import huggingface_hub
import pandas
import pyarrow

from datasets import __version__ as version
from datasets.commands import BaseDatasetsCLICommand







def 	A (		A__			):
     return EnvironmentCommand()




class  A_ (			a_  ):







 """simple docstring"""





 @staticmethod
 def 	_UpperCamelCase     (      _a       :			ArgumentParser					)     ->      Dict:
      UpperCAmelCase    :					Optional[Any]			=      parser.add_parser("env"							,     help="Print relevant system environment info."					)
      download_parser.set_defaults(func=_a					)
 def 	_UpperCamelCase     (      self       :			Tuple					)     ->      int:
      UpperCAmelCase    :					Optional[Any]			=      {
          "`datasets` version": version,
          "Platform": platform.platform(),
          "Python version": platform.python_version(),
          "Huggingface_hub version": huggingface_hub.__version__,
          "PyArrow version": pyarrow.__version__,
          "Pandas version": pandas.__version__,
      }

      print("\nCopy-and-paste the text below in your GitHub issue.\n"					)
      print(self.format_dict(_a					)					)

      return info

 @staticmethod
 def 	_UpperCamelCase     (      _a       :			List[Any]					)     ->      int:
      return "\n".join([f'- {prop}: {val}' for prop, val in d.items()]					) + "\n"







from __future__ import annotations

import sys







def 	A (		A__		,		A__			):
     # base cases
     if abs(A__			) == 1:
          return a, 0
     elif abs(A__			) == 1:
          return 0, b

     UpperCAmelCase	,			UpperCAmelCase    :					Any			=      a, b
     UpperCAmelCase	,			UpperCAmelCase    :					List[Any]			=      1, 0
     UpperCAmelCase	,			UpperCAmelCase    :					Union[str, Any]			=      0, 1

     while remainder != 0:
          UpperCAmelCase    :					Union[str, Any]			=      old_remainder // remainder
          UpperCAmelCase	,			UpperCAmelCase    :					Dict			=      remainder, old_remainder - quotient * remainder
          UpperCAmelCase	,			UpperCAmelCase    :					int			=      coeff_a, old_coeff_a - quotient * coeff_a
          UpperCAmelCase	,			UpperCAmelCase    :					Optional[Any]			=      coeff_b, old_coeff_b - quotient * coeff_b

     # sign correction for negative numbers
     if a < 0:
          UpperCAmelCase    :					Union[str, Any]			=      -old_coeff_a
     if b < 0:
          UpperCAmelCase    :					int			=      -old_coeff_b

     return old_coeff_a, old_coeff_b







def 	A (		):
     if len(sys.argv			) < 3:
          print("2 integer arguments required"			)
          return 1
     UpperCAmelCase    :					Union[str, Any]			=      int(sys.argv[1]			)
     UpperCAmelCase    :					Any			=      int(sys.argv[2]			)
     print(extended_euclidean_algorithm(A__		,		A__			)			)
     return 0


if __name__ == "__main__":
      raise SystemExit(main())



