import math n = int(input()) A = list(map(int,input().split())) def f(A,inds): ans = [[inds[-1],inds[-2]]] a1,a2 = A[-1],A[-2] num = 10**18 if math.gcd(a1,a2) != 1: num = 0 else: num = (a1-1)*(a2-1) for i in range(len(A)-2): if math.gcd(num,A[0]) != 1: num = 0 if num: num = (num-1) * (A[0]-1) ans.append([1,2]) return num,ans if n >= 4: print(0) for i in range(n-1): print(1,2) else: inds = [i+1 for i in range(n)] res = 10**18 ans = [] for i in range(n): num,ans2 = f(A,inds) if num < res: res = num ans = ans2 inds = inds[1:] + [inds[0]] A = A[1:] + [A[0]] print(res) for a in ans: print(*a)