

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_tf_available, is_torch_available


lowerCAmelCase__      		=			{
    'configuration_data2vec_audio': ['DATA2VEC_AUDIO_PRETRAINED_CONFIG_ARCHIVE_MAP', 'Data2VecAudioConfig'],
    'configuration_data2vec_text': [
        'DATA2VEC_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'Data2VecTextConfig',
        'Data2VecTextOnnxConfig',
    ],
    'configuration_data2vec_vision': [
        'DATA2VEC_VISION_PRETRAINED_CONFIG_ARCHIVE_MAP',
        'Data2VecVisionConfig',
        'Data2VecVisionOnnxConfig',
    ],
}

try:
 if not is_torch_available():
  raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
 pass
else:
 lowerCAmelCase__      		=			[
     'DATA2VEC_AUDIO_PRETRAINED_MODEL_ARCHIVE_LIST',
     'Data2VecAudioForAudioFrameClassification',
     'Data2VecAudioForCTC',
     'Data2VecAudioForSequenceClassification',
     'Data2VecAudioForXVector',
     'Data2VecAudioModel',
     'Data2VecAudioPreTrainedModel',
 ]
 lowerCAmelCase__      		=			[
     'DATA2VEC_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST',
     'Data2VecTextForCausalLM',
     'Data2VecTextForMaskedLM',
     'Data2VecTextForMultipleChoice',
     'Data2VecTextForQuestionAnswering',
     'Data2VecTextForSequenceClassification',
     'Data2VecTextForTokenClassification',
     'Data2VecTextModel',
     'Data2VecTextPreTrainedModel',
 ]
 lowerCAmelCase__      		=			[
     'DATA2VEC_VISION_PRETRAINED_MODEL_ARCHIVE_LIST',
     'Data2VecVisionForImageClassification',
     'Data2VecVisionForMaskedImageModeling',
     'Data2VecVisionForSemanticSegmentation',
     'Data2VecVisionModel',
     'Data2VecVisionPreTrainedModel',
 ]

if is_tf_available():
 lowerCAmelCase__      		=			[
     'TFData2VecVisionForImageClassification',
     'TFData2VecVisionForSemanticSegmentation',
     'TFData2VecVisionModel',
     'TFData2VecVisionPreTrainedModel',
 ]

if TYPE_CHECKING:
 from .configuration_dataavec_audio import DATA2VEC_AUDIO_PRETRAINED_CONFIG_ARCHIVE_MAP, DataaVecAudioConfig
 from .configuration_dataavec_text import (
     DATA2VEC_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP,
     DataaVecTextConfig,
     DataaVecTextOnnxConfig,
 )
 from .configuration_dataavec_vision import (
     DATA2VEC_VISION_PRETRAINED_CONFIG_ARCHIVE_MAP,
     DataaVecVisionConfig,
     DataaVecVisionOnnxConfig,
 )

 try:
  if not is_torch_available():
   raise OptionalDependencyNotAvailable()
 except OptionalDependencyNotAvailable:
  pass
 else:
  from .modeling_dataavec_audio import (
      DATA2VEC_AUDIO_PRETRAINED_MODEL_ARCHIVE_LIST,
      DataaVecAudioForAudioFrameClassification,
      DataaVecAudioForCTC,
      DataaVecAudioForSequenceClassification,
      DataaVecAudioForXVector,
      DataaVecAudioModel,
      DataaVecAudioPreTrainedModel,
  )
  from .modeling_dataavec_text import (
      DATA2VEC_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
      DataaVecTextForCausalLM,
      DataaVecTextForMaskedLM,
      DataaVecTextForMultipleChoice,
      DataaVecTextForQuestionAnswering,
      DataaVecTextForSequenceClassification,
      DataaVecTextForTokenClassification,
      DataaVecTextModel,
      DataaVecTextPreTrainedModel,
  )
  from .modeling_dataavec_vision import (
      DATA2VEC_VISION_PRETRAINED_MODEL_ARCHIVE_LIST,
      DataaVecVisionForImageClassification,
      DataaVecVisionForMaskedImageModeling,
      DataaVecVisionForSemanticSegmentation,
      DataaVecVisionModel,
      DataaVecVisionPreTrainedModel,
  )
 if is_tf_available():
  from .modeling_tf_dataavec_vision import (
      TFDataaVecVisionForImageClassification,
      TFDataaVecVisionForSemanticSegmentation,
      TFDataaVecVisionModel,
      TFDataaVecVisionPreTrainedModel,
  )

else:
 import sys

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




'''simple docstring'''






from collections.abc import Callable

import numpy as np


def 	_A  (					A__  ,       A__  ,       A__  ,       A__  ,       A__   ):






 """simple docstring"""



 __lowercase													=				int(np.ceil((x_end - xa) / step_size   )   )
 __lowercase													=				np.zeros((n + 1,)   )
 __lowercase													=				ya
 __lowercase													=				xa

 for k in range(A__   ):
  __lowercase													=				y[k] + step_size * ode_func(A__  ,       y[k]   )
  x += step_size

 return y


if __name__ == "__main__":
 import doctest

 doctest.testmod()

