


"""simple docstring"""






from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


lowercase  		=			{'''configuration_umt5''': ['''UMT5Config''', '''UMT5OnnxConfig''']}


try:
					if not is_torch_available():
										raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
					pass
else:
					lowercase  		=			[
					    '''UMT5EncoderModel''',
					    '''UMT5ForConditionalGeneration''',
					    '''UMT5ForQuestionAnswering''',
					    '''UMT5Model''',
					    '''UMT5PreTrainedModel''',
					]

if TYPE_CHECKING:
					from .configuration_umta import UMTaConfig, UMTaOnnxConfig

					try:
										if not is_torch_available():
															raise OptionalDependencyNotAvailable()
					except OptionalDependencyNotAvailable:
										pass
					else:
										from .modeling_umta import (
										    UMTaEncoderModel,
										    UMTaForConditionalGeneration,
										    UMTaForQuestionAnswering,
										    UMTaModel,
										    UMTaPreTrainedModel,
										)
else:
					import sys

					lowercase  		=			_LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)










def 	__snake_case      (     _UpperCAmelCase  ,					_UpperCAmelCase  ,					_UpperCAmelCase							):
    __a					=							[1 / first_term]
    __a					=							1 / first_term
    for _ in range(number_of_terms - 1							):
        first_term += common_difference
        arithmetic_progression.append(_UpperCAmelCase							)
    __a					=							[1 / step for step in arithmetic_progression]
    return sum(_UpperCAmelCase							)


if __name__ == "__main__":
 import doctest

 doctest.testmod()
 print(sum_of_harmonic_progression(1 / 2, 2, 2))





