




"""simple docstring"""






class lowerCAmelCase__      :






			'''simple docstring'''



			def __init__(    self    , lowercase    ):
							_lowerCamelCase	:     Any       =       len(lowercase    )
							_lowerCamelCase	:     Optional[int]       =       [0] * len_array

							if len_array > 0:
											_lowerCamelCase	:     Optional[Any]       =       array[0]

							for i in range(1    , lowercase    ):
											_lowerCamelCase	:     Union[str, Any]       =       self.prefix_sum[i - 1] + array[i]
			def    A_       (    self    , lowercase    , lowercase    ):
							if start == 0:
											return self.prefix_sum[end]

							return self.prefix_sum[end] - self.prefix_sum[start - 1]






			def    A_       (    self    , lowercase    ):
							_lowerCamelCase	:     Optional[Any]       =       {0}
							for sum_item in self.prefix_sum:
											if sum_item - target_sum in sums:
															return True

											sums.add(lowercase    )

							return False


if __name__ == "__main__":
			import doctest

			doctest.testmod()





"""simple docstring"""






import re







def 	_snake_case     (							lowercase__						):

				if len(re.findall('[ATCG]'				,       lowercase__						)						) != len(lowercase__						):
								raise ValueError('Invalid Strand'						)

				return dna.translate(dna.maketrans('ATCG'				,       'TAGC'						)						)


if __name__ == "__main__":
			import doctest

			doctest.testmod()