"""simple docstring"""





from typing import TYPE_CHECKING

from ...utils import (
    OptionalDependencyNotAvailable,
    _LazyModule,
    is_sentencepiece_available,
    is_tf_available,
    is_tokenizers_available,
    is_torch_available,
)


__A     = {'''configuration_xlnet''': ['''XLNET_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''XLNetConfig''']}

try:
				if not is_sentencepiece_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__A     = ['''XLNetTokenizer''']

try:
				if not is_tokenizers_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__A     = ['''XLNetTokenizerFast''']

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__A     = [
				    '''XLNET_PRETRAINED_MODEL_ARCHIVE_LIST''',
				    '''XLNetForMultipleChoice''',
				    '''XLNetForQuestionAnswering''',
				    '''XLNetForQuestionAnsweringSimple''',
				    '''XLNetForSequenceClassification''',
				    '''XLNetForTokenClassification''',
				    '''XLNetLMHeadModel''',
				    '''XLNetModel''',
				    '''XLNetPreTrainedModel''',
				    '''load_tf_weights_in_xlnet''',
				]

try:
				if not is_tf_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				__A     = [
				    '''TF_XLNET_PRETRAINED_MODEL_ARCHIVE_LIST''',
				    '''TFXLNetForMultipleChoice''',
				    '''TFXLNetForQuestionAnsweringSimple''',
				    '''TFXLNetForSequenceClassification''',
				    '''TFXLNetForTokenClassification''',
				    '''TFXLNetLMHeadModel''',
				    '''TFXLNetMainLayer''',
				    '''TFXLNetModel''',
				    '''TFXLNetPreTrainedModel''',
				]


if TYPE_CHECKING:
				from .configuration_xlnet import XLNET_PRETRAINED_CONFIG_ARCHIVE_MAP, XLNetConfig

				try:
								if not is_sentencepiece_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .tokenization_xlnet import XLNetTokenizer

				try:
								if not is_tokenizers_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .tokenization_xlnet_fast import XLNetTokenizerFast

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_xlnet import (
								    XLNET_PRETRAINED_MODEL_ARCHIVE_LIST,
								    XLNetForMultipleChoice,
								    XLNetForQuestionAnswering,
								    XLNetForQuestionAnsweringSimple,
								    XLNetForSequenceClassification,
								    XLNetForTokenClassification,
								    XLNetLMHeadModel,
								    XLNetModel,
								    XLNetPreTrainedModel,
								    load_tf_weights_in_xlnet,
								)

				try:
								if not is_tf_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_tf_xlnet import (
								    TF_XLNET_PRETRAINED_MODEL_ARCHIVE_LIST,
								    TFXLNetForMultipleChoice,
								    TFXLNetForQuestionAnsweringSimple,
								    TFXLNetForSequenceClassification,
								    TFXLNetForTokenClassification,
								    TFXLNetLMHeadModel,
								    TFXLNetMainLayer,
								    TFXLNetModel,
								    TFXLNetPreTrainedModel,
								)

else:
				import sys

				__A     = _LazyModule(__name__, globals()['''__file__'''], _import_structure, module_spec=__spec__)


def      a      (			A__	:   str      ,   A__	:   bool = False     )    ->      str:





      """simple docstring"""



      if not isinstance(A__      ,   A__     ):
            _lowercase	       =F'''Expected string as input, found {type(A__     )}'''
            raise ValueError(A__     )
      if not isinstance(A__      ,   A__     ):
            _lowercase	       =F'''Expected boolean as use_pascal parameter, found {type(A__     )}'''
            raise ValueError(A__     )

      _lowercase	       =input_str.split('_'     )

      _lowercase	       =0 if use_pascal else 1

      _lowercase	       =words[start_index:]

      _lowercase	       =[word[0].upper() + word[1:] for word in words_to_capitalize]

      _lowercase	       ='' if use_pascal else words[0]

      return "".join([initial_word, *capitalized_words]     )


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

  testmod()


