favorite We need a little bit of your help to keep things running, click on this banner to learn more
Competitions

# Enigmatic Device

Yes, it happened! The first contact! Aliens will visit the Earth in 2010! And they promised to bring an enigmatic device which cannot be constructed using existing Earth technologies. Most of the scientists of the world think so! All newspapers already published their leading articles about it.

This device will accept an integer sequence {ai} as its initial input. After that, it can perform the following two operations:

1. Take an interval [l; r] and perform aiai2 mod 2010 for all ai such that lir.
2. Take an interval [l; r] and output the sum of all ai such that lir. Note that the sum is not taken modulo 2010.

The amazing thing about this device is that it is able to perform 50 000 operations of this kind with a sequence of 50 000 numbers within 3 seconds. Nobody could do it before!

But Roman does not believe in aliens and thinks that it is only a great hoax made by somebody just to win another million bucks on the stock exchange. His goal is to prove this. So he hired you to write a program to simulate this device.

Given an integer sequence ai and a sequence of operations, write a program which simulates the behaviour of the strange alien device.

Input

The first line of the input contains the length of the sequence n (1n50 000). The second line contains n numbers ai forming the initial sequence (0ai2009). The third line contains the number of operations m (1m50 000). The rest of file contains m lines, each describing one operation. The j-th operation is described by its kind kj ('1' for squaring, '2' for calculating the sum), followed by two integers lj and rj (1ljrjn).

Output

For each operation of the second kind, write their output on the separate line, in order they appear in the input.

Time limit 1 second
Memory limit 256 MiB
Input example #1
```3
17 239 999
4
2 1 3
1 2 3
2 2 3
2 1 2
```
Output example #1
```1255
1882
858
```
Author R.Satukov, A.Lopatin
Source ACM ICPC 2009-2010, NEERC, Northern Subregional Contest, St Petersburg, October 17, 2009