output_description: Print \displaystyle{\sum_{i=1}^N A_i}.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N X M
attempt: def e_sequence_sum():
      N, X, M = [int(i) for i in input().split()]
  
      appear = set([X])
      seq = [X]
      while True:
          seq.append(seq[-1] ** 2 % M)
          if seq[-1] in appear:
              break
          appear.add(seq[-1])
      loop_length = len(seq) - seq.index(seq[-1]) - 1
      seq.pop()
      first, loop = seq[:-loop_length], seq[-loop_length:]
      loop_count, reminder = divmod(N - len(first), loop_length)
      ans = sum(first) + sum(loop) * loop_count
      for i in range(reminder):
          ans += loop[i % reminder]
      return ans
  
  
  print(e_sequence_sum())
  
problem_description: Statement
  
  Let us denote by f(x, m) the remainder of the Euclidean division of x by m.
  
  Let A be the sequence that is defined by the initial value A_1=X and the
  recurrence relation A_{n+1} = f(A_n^2, M). Find \displaystyle{\sum_{i=1}^N
  A_i}.
samples: [{"input": "6 2 1001", "output": "1369\n    \n\nThe sequence A begins 2,4,16,256,471,620,\\ldots Therefore, the answer is\n2+4+16+256+471+620=1369.\n\n* * *"}, {"input": "1000 2 16", "output": "6\n    \n\nThe sequence A begins 2,4,0,0,\\ldots Therefore, the answer is 6.\n\n* * *"}, {"input": "10000000000 10 99959", "output": "492443256176507"}]