


'''simple docstring'''
import os
import sys

UpperCamelCase__          = os.path.join(os.path.dirname(__file__), '''src''')
sys.path.append(SRC_DIR)


from transformers import (
    AutoConfig,
    AutoModel,
    AutoModelForCausalLM,
    AutoModelForMaskedLM,
    AutoModelForQuestionAnswering,
    AutoModelForSequenceClassification,
    AutoTokenizer,
    add_start_docstrings,
)


UpperCamelCase__          = [
    '''torch''',
    '''numpy''',
    '''tokenizers''',
    '''filelock''',
    '''requests''',
    '''tqdm''',
    '''regex''',
    '''sentencepiece''',
    '''sacremoses''',
    '''importlib_metadata''',
    '''huggingface_hub''',
]





@add_start_docstrings(AutoConfig.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      Dict:
    return AutoConfig.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)





@add_start_docstrings(AutoTokenizer.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      Any:
    return AutoTokenizer.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)





@add_start_docstrings(AutoModel.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      int:
    return AutoModel.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)





@add_start_docstrings(AutoModelForCausalLM.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      List[str]:
    return AutoModelForCausalLM.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)





@add_start_docstrings(AutoModelForMaskedLM.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      int:
    return AutoModelForMaskedLM.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)





@add_start_docstrings(AutoModelForSequenceClassification.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      str:
    return AutoModelForSequenceClassification.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)







@add_start_docstrings(AutoModelForQuestionAnswering.__doc__		)
def    a__			(   *lowerCAmelCase__    ,   **lowerCAmelCase__		)       ->      Optional[int]:
    return AutoModelForQuestionAnswering.from_pretrained(*lowerCAmelCase__    ,   **lowerCAmelCase__		)


from __future__ import annotations

def a__       (			A_,	A_   ):






  '''simple docstring'''





  if b == 0:
    return (1, 0)
  ((__magic_name__)	,       (__magic_name__))								=			extended_euclid(A_,	a % b   )
  __magic_name__								=			a // b
  return (y, x - k * y)

def a__       (			A_,	A_,	A_,	A_   ):






  '''simple docstring'''





  ((__magic_name__)	,       (__magic_name__))								=			extended_euclid(A_,	A_   )
  __magic_name__								=			na * na
  __magic_name__								=			ra * x * na + ra * y * na
  return (n % m + m) % m

def a__       (			A_,	A_   ):






  '''simple docstring'''





  ((__magic_name__)	,       (__magic_name__))								=			extended_euclid(A_,	A_   )
  if b < 0:
    __magic_name__								=			(b % n + n) % n
  return b

def a__       (			A_,	A_,	A_,	A_   ):






  '''simple docstring'''





  __magic_name__	,       __magic_name__								=			invert_modulo(A_,	A_   ), invert_modulo(A_,	A_   )
  __magic_name__								=			na * na
  __magic_name__								=			ra * x * na + ra * y * na
  return (n % m + m) % m


if __name__ == "__main__":
    from doctest import testmod

    testmod(name='chinese_remainder_theorem', verbose=True)
    testmod(name='chinese_remainder_theorem2', verbose=True)
    testmod(name='invert_modulo', verbose=True)
    testmod(name='extended_euclid', verbose=True)

