





from __future__ import annotations
def      A__       (    SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      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      A__       (    SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      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      A__       (    SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      float				,	SCREAMING_SNAKE_CASE_   :      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(
       SCREAMING_SNAKE_CASE_				,	nominal_annual_percentage_rate / 3_65				,	number_of_years * 3_65						)


if __name__ == "__main__":
   import doctest

   doctest.testmod()


'''simple docstring'''







import pytest

import datasets


# Import fixture modules as plugins
__lowerCamelCase									=     ['''tests.fixtures.files''', '''tests.fixtures.hub''', '''tests.fixtures.fsspec''']
def    UpperCAmelCase__     (   UpperCAmelCase__,							UpperCAmelCase__					)      ->      Optional[int]:
       # Mark tests as "unit" by default if not marked as "integration" (or already marked as "unit")
       for item in items:
              if any(marker in item.keywords for marker in ["""integration""", """unit"""]					):
                     continue
              item.add_marker(pytest.mark.unit					)
def    UpperCAmelCase__     (   UpperCAmelCase__					)      ->      Tuple:
       config.addinivalue_line("""markers""",							"""torchaudio_latest: mark test to run with torchaudio>=0.12"""					)
@pytest.fixture(autouse=UpperCAmelCase__					)
def    UpperCAmelCase__     (   UpperCAmelCase__,							UpperCAmelCase__					)      ->      int:
       # test_hf_cache_home = tmp_path_factory.mktemp("cache")  # TODO: why a cache dir per test function does not work?
       A_						       =   tmp_path_factory.getbasetemp() / """cache"""
       A_						       =   test_hf_cache_home / """datasets"""
       A_						       =   test_hf_cache_home / """metrics"""
       A_						       =   test_hf_cache_home / """modules"""
       monkeypatch.setattr("""datasets.config.HF_DATASETS_CACHE""",							str(UpperCAmelCase__					)					)
       monkeypatch.setattr("""datasets.config.HF_METRICS_CACHE""",							str(UpperCAmelCase__					)					)
       monkeypatch.setattr("""datasets.config.HF_MODULES_CACHE""",							str(UpperCAmelCase__					)					)
       A_						       =   test_hf_datasets_cache / """downloads"""
       monkeypatch.setattr("""datasets.config.DOWNLOADED_DATASETS_PATH""",							str(UpperCAmelCase__					)					)
       A_						       =   test_hf_datasets_cache / """downloads""" / """extracted"""
       monkeypatch.setattr("""datasets.config.EXTRACTED_DATASETS_PATH""",							str(UpperCAmelCase__					)					)
@pytest.fixture(autouse=UpperCAmelCase__,							scope="""session"""					)
def    UpperCAmelCase__     (   )      ->      str:
       datasets.disable_progress_bar()
@pytest.fixture(autouse=UpperCAmelCase__					)
def    UpperCAmelCase__     (   UpperCAmelCase__					)      ->      Tuple:
       # don't take tests into account when counting downloads
       monkeypatch.setattr("""datasets.config.HF_UPDATE_DOWNLOAD_COUNTS""",							UpperCAmelCase__					)







@pytest.fixture
def    UpperCAmelCase__     (   UpperCAmelCase__					)      ->      Any:
       # Required to suppress RemovedIn20Warning when feature(s) are not compatible with SQLAlchemy 2.0
       # To be removed once SQLAlchemy 2.0 supported
       monkeypatch.setattr("""sqlalchemy.util.deprecations.SILENCE_UBER_WARNING""",							UpperCAmelCase__					)
