"""simple docstring"""
from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


SCREAMING_SNAKE_CASE__      						=  {"configuration_sew": ["SEW_PRETRAINED_CONFIG_ARCHIVE_MAP", "SEWConfig"]}

try:
     if not is_torch_available():
          raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
     pass
else:
     SCREAMING_SNAKE_CASE__      						=  [
         "SEW_PRETRAINED_MODEL_ARCHIVE_LIST",
         "SEWForCTC",
         "SEWForSequenceClassification",
         "SEWModel",
         "SEWPreTrainedModel",
     ]

if TYPE_CHECKING:
     from .configuration_sew import SEW_PRETRAINED_CONFIG_ARCHIVE_MAP, SEWConfig

     try:
          if not is_torch_available():
               raise OptionalDependencyNotAvailable()
     except OptionalDependencyNotAvailable:
          pass
     else:
          from .modeling_sew import (
              SEW_PRETRAINED_MODEL_ARCHIVE_LIST,
              SEWForCTC,
              SEWForSequenceClassification,
              SEWModel,
              SEWPreTrainedModel,
          )


else:
     import sys

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



"""simple docstring"""
import math





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





						"""simple docstring"""






						if initial_intensity < 0:
												raise ValueError('The value of intensity cannot be negative'					)
												# handling of negative values of initial intensity
						if angle < 0 or angle > 3_6_0:
												raise ValueError('In Malus Law, the angle is in the range 0-360 degrees'					)
												# handling of values out of allowed range
						return initial_intensity * (math.cos(math.radians(_UpperCamelCase					)					) ** 2)


if __name__ == "__main__":
					import doctest

					doctest.testmod(name="malus_law")


