



from typing import TYPE_CHECKING

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


__snake_case       :	Union[str, Any]            ={'configuration_xlnet': ['XLNET_PRETRAINED_CONFIG_ARCHIVE_MAP', 'XLNetConfig']}

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

try:
							if not is_tokenizers_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							__snake_case       :	Union[str, Any]            =['XLNetTokenizerFast']

try:
							if not is_torch_available():
														raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
							pass
else:
							__snake_case       :	Dict            =[
							    '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:
							__snake_case       :	Dict            =[
							    '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

							__snake_case       :	Optional[int]            =_LazyModule(__name__, globals()['__file__'], _import_structure, module_spec=__spec__)






from collections.abc import Callable

import numpy as np






def 			lowerCAmelCase__	(					lowerCamelCase_	:	Callable ,lowerCamelCase_	:	float ,lowerCamelCase_	:	float ,lowerCamelCase_	:	float ,lowerCamelCase_	:	float):





				'''simple docstring'''

				lowerCAmelCase__  :       Dict				=  int(np.ceil((x_end - xa) / step_size))
				lowerCAmelCase__  :       Any				=  np.zeros((n + 1,))
				lowerCAmelCase__  :       Union[str, Any]				=  ya
				lowerCAmelCase__  :       str				=  xa

				for k in range(lowerCamelCase_):
								lowerCAmelCase__  :       Tuple				=  y[k] + step_size * ode_func(lowerCamelCase_ ,y[k])
								lowerCAmelCase__  :       str				=  y[k] + (
								    (step_size / 2) * (ode_func(lowerCamelCase_ ,y[k]) + ode_func(x + step_size ,lowerCamelCase_))
								)
								x += step_size

				return y


if __name__ == "__main__":
							import doctest

							doctest.testmod()

