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: def fastSumPair(A):
      L = len(A)
      M = 1000000007
  
      # (a + b + c)**2 = a**2 + b**2 + c**2 + 2*(a*b + b*c + c*a)
      # derive from this equation
  
      # first array
      A_1_sum = 0
      for i in range(0, L):
          A_1_sum = A_1_sum + A[i]
  
      A_1_sum = A_1_sum**2
  
      # second array
      A_2_sum = 0
      for i in range(0, L):
          A_2_sum = A_2_sum + A[i] ** 2
  
      return int((A_1_sum - A_2_sum) / 2) % M
  
  
  N = int(input())
  A = list(map(int, input().rstrip().split()))
  print(fastSumPair(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"}]