output_description: Print \sum_{i=1}^{N-1}\sum_{j=i+1}^{N} A_i A_j, modulo (10^9+7).
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
      A_1 \ldots A_N
attempt: import sys
  
  sys.setrecursionlimit(10**7)
  def I(): return int(sys.stdin.readline().rstrip())
  def MI(): return map(int,sys.stdin.readline().rstrip().split())
  def LI(): return list(map(int,sys.stdin.readline().rstrip().split()))  #空白あり
  def LI2(): return list(map(int,sys.stdin.readline().rstrip()))  #空白なし
  def S(): return sys.stdin.readline().rstrip()
  def LS(): return list(sys.stdin.readline().rstrip().split())  #空白あり
  def LS2(): return list(sys.stdin.readline().rstrip())  #空白なし
  
  
  N = I()
  A = LI()
  s = sum(A)
  mod = 10**9+7
  s %= mod
  
  a = s**2-sum(A[i]**2 for i in range(N))
  a %= mod
  a *= pow(2,mod-2,mod)
  a %= mod
  
  print(a)
  
problem_description: Statement
  
  Given are N integers A_1,\ldots,A_N.
  
  Find the sum of A_i \times A_j over all pairs (i,j) such that 1\leq i < j \leq
  N, modulo (10^9+7).
samples: [{"input": "3\n    1 2 3", "output": "11\n    \n\nWe have 1 \\times 2 + 1 \\times 3 + 2 \\times 3 = 11.\n\n* * *"}, {"input": "4\n    141421356 17320508 22360679 244949", "output": "437235829"}]