
from typing import TYPE_CHECKING

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


lowerCamelCase_						     =					{
    '''configuration_speech_to_text''': ['''SPEECH_TO_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP''', '''Speech2TextConfig'''],
    '''processing_speech_to_text''': ['''Speech2TextProcessor'''],
}

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

try:
    if not is_speech_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase_						     =					['''Speech2TextFeatureExtractor''']

try:
    if not is_tf_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase_						     =					[
        '''TF_SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''TFSpeech2TextForConditionalGeneration''',
        '''TFSpeech2TextModel''',
        '''TFSpeech2TextPreTrainedModel''',
    ]

try:
    if not is_torch_available():
        raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
    pass
else:
    lowerCamelCase_						     =					[
        '''SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST''',
        '''Speech2TextForConditionalGeneration''',
        '''Speech2TextModel''',
        '''Speech2TextPreTrainedModel''',
    ]


if TYPE_CHECKING:
    from .configuration_speech_to_text import SPEECH_TO_TEXT_PRETRAINED_CONFIG_ARCHIVE_MAP, SpeechaTextConfig
    from .processing_speech_to_text import SpeechaTextProcessor

    try:
        if not is_sentencepiece_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .tokenization_speech_to_text import SpeechaTextTokenizer

    try:
        if not is_speech_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .feature_extraction_speech_to_text import SpeechaTextFeatureExtractor

    try:
        if not is_tf_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_tf_speech_to_text import (
            TF_SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
            TFSpeechaTextForConditionalGeneration,
            TFSpeechaTextModel,
            TFSpeechaTextPreTrainedModel,
        )

    try:
        if not is_torch_available():
            raise OptionalDependencyNotAvailable()
    except OptionalDependencyNotAvailable:
        pass
    else:
        from .modeling_speech_to_text import (
            SPEECH_TO_TEXT_PRETRAINED_MODEL_ARCHIVE_LIST,
            SpeechaTextForConditionalGeneration,
            SpeechaTextModel,
            SpeechaTextPreTrainedModel,
        )

else:
    import sys

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







from __future__ import annotations






def 						__magic_name__			(   __a      :	list[list[int]]						):



     '''simple docstring'''




     for i in range(1	,		len(matrix[0]						)						):
          matrix[0][i] += matrix[0][i - 1]

     # preprocessing the first column
     for i in range(1	,		len(__a						)						):
          matrix[i][0] += matrix[i - 1][0]

     # updating the path cost for current position
     for i in range(1	,		len(__a						)						):
          for j in range(1	,		len(matrix[0]						)						):
               matrix[i][j] += min(matrix[i - 1][j]	,		matrix[i][j - 1]						)

     return matrix[-1][-1]


if __name__ == "__main__":
    import doctest

    doctest.testmod()





