



import doctest
from collections import deque

import numpy as np






class      UpperCamelCase    :



	def __init__(       self		):
							A__							=       [2, 1, 2, -1]
							A__							=       [1, 2, 3, 4]



	def 			__A							(       self		):
							A__							=       len(self.first_signal		)
							A__							=       len(self.second_signal		)

							A__							=       max(UpperCAmelCase__			,	UpperCAmelCase__		)

							# create a zero matrix of max_length x max_length
							A__							=       [[0] * max_length for i in range(UpperCAmelCase__		)]

							# fills the smaller signal with zeros to make both signals of same length
							if length_first_signal < length_second_signal:
													self.first_signal += [0] * (max_length - length_first_signal)
							elif length_first_signal > length_second_signal:
													self.second_signal += [0] * (max_length - length_second_signal)
							for i in range(UpperCAmelCase__		):
													A__							=       deque(self.second_signal		)
													rotated_signal.rotate(UpperCAmelCase__		)
													for j, item in enumerate(UpperCAmelCase__		):
																			matrix[i][j] += item

        # multiply the matrix with the first signal
							A__							=       np.matmul(np.transpose(UpperCAmelCase__		)			,	np.transpose(self.first_signal		)		)

							# rounding-off to two decimal places
							return [round(UpperCAmelCase__			,	2		) for i in final_signal]


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










import math
from collections.abc import Iterator
from itertools import takewhile
def  UpperCamelCase						(       _A			:				int    )->       bool:





						"""simple docstring"""





						if 1 < number < 4:
												# 2 and 3 are primes
												return True
						elif number < 2 or number % 2 == 0 or number % 3 == 0:
												# Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
												return False

						# All primes number are in format of 6k +/- 1
						for i in range(5			,							int(math.sqrt(_A    ) + 1    )			,							6    ):
												if number % i == 0 or number % (i + 2) == 0:
																		return False
						return True
def  UpperCamelCase						(       )->       Iterator[int]:





						"""simple docstring"""





						A__							=       2
						while True:
												if is_prime(_A    ):
																		yield num
												num += 1
def  UpperCamelCase						(       _A			:				int = 2000000    )->       int:





						"""simple docstring"""





						return sum(takewhile(lambda _A    : x < n			,							prime_generator()    )    )


if __name__ == "__main__":
						print(F'''{solution() = }''')





