





from math import factorial, radians


def     SCREAMING_SNAKE_CASE			(      lowerCAmelCase    ,       lowerCAmelCase = 18    ,       lowerCAmelCase = 10					):
       _UpperCamelCase           =						angle_in_degrees - ((angle_in_degrees // 360.0) * 360.0)

       # Converting from degrees to radians
       _UpperCamelCase           =						radians(lowerCAmelCase					)

       _UpperCamelCase           =						angle_in_radians
       _UpperCamelCase           =						3
       _UpperCamelCase           =						-1

       for _ in range(lowerCAmelCase					):
              result += (b * (angle_in_radians**a)) / factorial(lowerCAmelCase					)

              _UpperCamelCase           =						-b  # One positive term and the next will be negative and so on...
              a += 2  # Increased by 2 for every term.

       return round(lowerCAmelCase    ,       lowerCAmelCase					)


if __name__ == "__main__":
       __import__("""doctest""").testmod()













from __future__ import annotations

from collections.abc import Iterator

class  __A:

     def __init__(      self,       A      ):





            """simple docstring"""

            _UpperCamelCase              =						value
            _UpperCamelCase              =						None
            _UpperCamelCase              =						None






class  __A:

     def __init__(      self,       A      ):





            """simple docstring"""

            _UpperCamelCase              =						tree

     def 	_UpperCamelCase     (      self,       A      ):





            """simple docstring"""

            if node is None:
                   return 0
            return node.value + (
                self.depth_first_search(node.left      ) + self.depth_first_search(node.right      )
            )



     def __iter__(      self      ):





            """simple docstring"""

            yield self.depth_first_search(self.tree      )


if __name__ == "__main__":
       import doctest

       doctest.testmod()






