






def 					snake_case__				(				UpperCAmelCase				:	int							):

    if length <= 0 or not isinstance(UpperCamelCase_     ,      UpperCamelCase_							):
        raise ValueError("Length must be a positive integer."							)
    return [n * (2 * n - 1) for n in range(UpperCamelCase_							)]


if __name__ == "__main__":
 print(hexagonal_numbers(length=5))
 print(hexagonal_numbers(length=10))








import re



def 		lowerCAmelCase__     (       UpperCamelCase_					:							str						)->	str:

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

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


if __name__ == "__main__":
   import doctest

   doctest.testmod()
