code: 
  
  
  
  
  
  
  def 			lowercase__  (				A_:	list[list[int]]     ,			A_:	list[list[int]]		)  ->							list[list[int]]:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         __UpperCAmelCase    							=[]
         __UpperCAmelCase    							=len(A_		)
         for i in range(A_		):
                __UpperCAmelCase    							=[]
                for j in range(A_		):
                       __UpperCAmelCase    							=0
                       for k in range(A_		):
                              __UpperCAmelCase    							=val + matrix_a[i][k] * matrix_b[k][j]
                       list_a.append(A_		)
                matrix_c.append(A_		)
         return matrix_c
  
  
  
  
  
  
  
  def 			lowercase__  (				A_:	int		)  ->							list[list[int]]:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         return [[int(row == column		) for column in range(A_		)] for row in range(A_		)]
  
  
  
  
  
  
  
  def 			lowercase__  (				A_:	int		)  ->							int:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         if n <= 1:
                return n
         __UpperCAmelCase    							=identity(2		)
         __UpperCAmelCase    							=[[1, 1], [1, 0]]
         __UpperCAmelCase    							=n - 1
         while n > 0:
                if n % 2 == 1:
                       __UpperCAmelCase    							=multiply(A_     ,			A_		)
                __UpperCAmelCase    							=multiply(A_     ,			A_		)
                __UpperCAmelCase    							=int(n / 2		)
         return res_matrix[0][0]
  
  
  
  
  
  
  
  def 			lowercase__  (				A_:	int		)  ->							int:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         if n <= 1:
                return n
         __UpperCAmelCase    							=0
         __UpperCAmelCase    							=1
         for _ in range(2     ,			n + 1		):
                __UpperCAmelCase							,   __UpperCAmelCase    							=fiba, fiba + fiba
         return fiba
  
  
  
  
  
  
  
  def 			lowercase__  (				)  ->							None:
  
  
  
  
  
  
  
         """simple docstring"""
  
  
  
  
  
  
         for ordinal in "0th 1st 2nd 3rd 10th 100th 1000th".split():
                __UpperCAmelCase    							=int("""""".join(c for c in ordinal if c in """0123456789"""		)		)  # 1000th --> 1000
                print(
                    F'''{ordinal} fibonacci number using matrix exponentiation is '''
                    F'''{nth_fibonacci_matrix(A_		)} and using bruteforce is '''
                    F'''{nth_fibonacci_bruteforce(A_		)}\n'''		)
         # from timeit import timeit
         # print(timeit("nth_fibonacci_matrix(1000000)",
         #              "from main import nth_fibonacci_matrix", number=5))
         # print(timeit("nth_fibonacci_bruteforce(1000000)",
         #              "from main import nth_fibonacci_bruteforce", number=5))
         # 2.3342058970001744
         # 57.256506615000035
  
  
  if __name__ == "__main__":
     import doctest
  
     doctest.testmod()
     main()
  
  
  
  
  
style_context: 
  
  
  
  
  
  
  __A  							=  [0.485, 0.456, 0.406]
  __A  							=  [0.229, 0.224, 0.225]
  __A  							=  [0.5, 0.5, 0.5]
  __A  							=  [0.5, 0.5, 0.5]
  __A  							=  [0.4814_5466, 0.457_8275, 0.4082_1073]
  __A  							=  [0.2686_2954, 0.2613_0258, 0.2757_7711]
  
  
  
  
  