



"""simple docstring"""







from __future__ import annotations

def     UpperCamelCase_   (   lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float						)						->       float:

  """simple docstring"""




  if days_between_payments <= 0:
    raise ValueError('days_between_payments must be > 0'						)
  if daily_interest_rate < 0:
    raise ValueError('daily_interest_rate must be >= 0'						)
  if principal <= 0:
    raise ValueError('principal must be > 0'						)
  return principal * daily_interest_rate * days_between_payments

def     UpperCamelCase_   (   lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float   ,       )						->       float:

  """simple docstring"""




  if number_of_compounding_periods <= 0:
    raise ValueError('number_of_compounding_periods must be > 0'						)
  if nominal_annual_interest_rate_percentage < 0:
    raise ValueError('nominal_annual_interest_rate_percentage must be >= 0'						)
  if principal <= 0:
    raise ValueError('principal must be > 0'						)

  return principal * (
      (1 + nominal_annual_interest_rate_percentage) ** number_of_compounding_periods
      - 1
  )

def     UpperCamelCase_   (   lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float   ,       lowerCAmelCase__				:    float   ,       )						->       float:

  """simple docstring"""




  if number_of_years <= 0:
    raise ValueError('number_of_years must be > 0'						)
  if nominal_annual_percentage_rate < 0:
    raise ValueError('nominal_annual_percentage_rate must be >= 0'						)
  if principal <= 0:
    raise ValueError('principal must be > 0'						)

  return compound_interest(
      lowerCAmelCase__   ,       nominal_annual_percentage_rate / 365   ,       number_of_years * 365						)


if __name__ == "__main__":
     import doctest

     doctest.testmod()










"""simple docstring"""







from typing import TYPE_CHECKING

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


lowercase__		:    Optional[int]				   =     {
    """configuration_trocr""": ["""TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP""", """TrOCRConfig"""],
    """processing_trocr""": ["""TrOCRProcessor"""],
}


try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     lowercase__		:    Dict				   =     [
         """TROCR_PRETRAINED_MODEL_ARCHIVE_LIST""",
         """TrOCRForCausalLM""",
         """TrOCRPreTrainedModel""",
     ]


if TYPE_CHECKING:
     from .configuration_trocr import TROCR_PRETRAINED_CONFIG_ARCHIVE_MAP, TrOCRConfig
     from .processing_trocr import TrOCRProcessor

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_trocr import TROCR_PRETRAINED_MODEL_ARCHIVE_LIST, TrOCRForCausalLM, TrOCRPreTrainedModel

else:
     import sys

     lowercase__		:    int				   =     _LazyModule(__name__, globals()["""__file__"""], _import_structure, module_spec=__spec__)





