




'''simple docstring'''






# A Bipartite Graph is a graph whose vertices can be divided into two independent sets,
# U and V such that every edge (u, v) either connects a vertex from U to V or a vertex
# from V to U. In other words, for every edge (u, v), either u belongs to U and v to V,
# or u belongs to V and v to U. We can also say that there is no edge that connects
# vertices of same set.













def 		UpperCamelCase__      (		__SCREAMING_SNAKE_CASE		)    ->   Optional[int]:
      snake_case__       :   Optional[int]	      =    [False] * len(_lowercase		)
      snake_case__       :   str	      =    [-1] * len(_lowercase		)

      def dfs(__SCREAMING_SNAKE_CASE				,      __SCREAMING_SNAKE_CASE		):
            snake_case__       :   Dict	      =    True
            snake_case__       :   Tuple	      =    c
            for u in graph[v]:
                  if not visited[u]:
                        dfs(_lowercase				,      1 - c		)

      for i in range(len(_lowercase		)		):
            if not visited[i]:
                  dfs(_lowercase				,      0		)

      for i in range(len(_lowercase		)		):
            for j in graph[i]:
                  if color[i] == color[j]:
                        return False

      return True


# Adjacency list of graph
A_			      =		{0: [1, 3], 1: [0, 2], 2: [1, 3], 3: [0, 2], 4: []}




print(check_bipartite_dfs(graph))






from decimal import Decimal, getcontext
from math import ceil, factorial







def lowerCamelCase__  (     _lowercase ):

     '''simple docstring'''


     if not isinstance(_lowercase					,		_lowercase ):
          raise TypeError('''Undefined for non-integers''' )
     elif precision < 1:
          raise ValueError('''Undefined for non-natural numbers''' )

     UpperCAmelCase_     :				Tuple  =     precision
     UpperCAmelCase_     :				Optional[Any]  =     ceil(precision / 14 )
     UpperCAmelCase_     :				int  =     426880 * Decimal(10005 ).sqrt()
     UpperCAmelCase_     :				Tuple  =     1
     UpperCAmelCase_     :				List[Any]  =     13591409
     UpperCAmelCase_     :				Optional[Any]  =     Decimal(_lowercase )
     for k in range(1					,		_lowercase ):
          UpperCAmelCase_     :				List[str]  =     factorial(6 * k ) // (factorial(3 * k ) * factorial(_lowercase ) ** 3)
          linear_term += 545140134
          exponential_term *= -262537412640768000
          partial_sum += Decimal(multinomial_term * linear_term ) / exponential_term
     return str(constant_term / partial_sum )[:-1]


if __name__ == "__main__":
     __a							     =					50
     print(F"""The first {n} digits of pi is: {pi(n)}""")