

from itertools import permutations




def      UpperCAmelCase__							(     _A :					int = 5				):





  '''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(_snake_case      , list(_snake_case				)				)
    if is_magic_gon(_snake_case				):
      return int(''''''.join(str(_snake_case				) for n in numbers				)				)

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




def      UpperCAmelCase__							(     _A :					int      , _A :					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(_snake_case				) // 3 + magic_number				):
    a__    =perm[2 * i + 1]
    a__    =result[3 * i - 1]
    a__    =perm[2 * i + 2]

  return result




def      UpperCAmelCase__							(     _A :					list[int]				):





  '''simple docstring'''







  if len(_snake_case				) % 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(_snake_case				)      , 3				)				)


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




"""simple docstring"""





def   _snake_case    (    _snake_case					:      int      ):
      if not isinstance(_snake_case			, _snake_case      ):
            lowerCAmelCase       :						int							= f'''Input value of [number={number}] must be an integer'''
            raise TypeError(_snake_case      )
      if number < 0 or number % 2 == 1:
            return False
      lowerCAmelCase       :						int							= int(number**0.5      )
      return number == number_sqrt * (number_sqrt + 1)


if __name__ == "__main__":
 import doctest

 doctest.testmod()


