


'''simple docstring'''

from itertools import permutations






def __UpperCamelCase (      __lowerCamelCase		:			int = 5					)   ->  int:







     '''simple docstring'''






     if gon_side < 3 or gon_side > 5:
          raise ValueError("gon_side must be in the range [3, 5]"					)

     # Since it's 16, we know 10 is on the outer ring
     # Put the big numbers at the end so that they are never the first number
     _a            =		list(range(gon_side + 1   ,	0   ,	-1					)					)
     _a            =		list(range(gon_side + 2   ,	gon_side * 2 + 1					)					)

     for perm in permutations(small_numbers + big_numbers					):
          _a            =		generate_gon_ring(__lowerCamelCase   ,	list(__lowerCamelCase					)					)
          if is_magic_gon(__lowerCamelCase					):
               return int("".join(str(__lowerCamelCase					) for n in numbers					)					)

     _a            =		F"Magic {gon_side}-gon ring is impossible"
     raise ValueError(__lowerCamelCase					)






def __UpperCamelCase (      __lowerCamelCase		:			int   ,	__lowerCamelCase		:			list[int]					)   ->  list[int]:







     '''simple docstring'''






     _a            =		[0] * (gon_side * 3)
     _a            =		perm[0:3]
     perm.append(perm[1]					)

     _a            =		1 if gon_side < 5 else 2

     for i in range(1   ,	len(__lowerCamelCase					) // 3 + magic_number					):
          _a            =		perm[2 * i + 1]
          _a            =		result[3 * i - 1]
          _a            =		perm[2 * i + 2]

     return result






def __UpperCamelCase (      __lowerCamelCase		:			list[int]					)   ->  bool:







     '''simple docstring'''






     if len(__lowerCamelCase					) % 3 != 0:
          raise ValueError("a gon ring should have a length that is a multiple of 3"					)

     if min(numbers[::3]					) != numbers[0]:
          return False

     _a            =		sum(numbers[:3]					)

     return all(sum(numbers[i : i + 3]					) == total for i in range(3   ,	len(__lowerCamelCase					)   ,	3					)					)


if __name__ == "__main__":
   print(solution())





'''simple docstring'''

def __UpperCamelCase (      __lowerCamelCase		:			int					)   ->  int:







     '''simple docstring'''






     if not isinstance(__lowerCamelCase   ,	__lowerCamelCase					) or number < 0:
          raise ValueError("Input must be a non-negative integer"					)

     _a            =		number & ~(number - 1)
     _a            =		0
     while intermediate:
          intermediate >>= 1
          index += 1
     return index - 1


if __name__ == "__main__":
   import doctest

   doctest.testmod(verbose=True)

