Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

No tag edit access

A. Eugeny and Array

time limit per test

1 secondmemory limit per test

256 megabytesinput

standard inputoutput

standard outputEugeny has array *a* = *a* _{1}, *a* _{2}, ..., *a* _{ n}, consisting of *n* integers. Each integer *a* _{ i} equals to -1, or to 1. Also, he has *m* queries:

- Query number
*i*is given as a pair of integers*l*_{ i},*r*_{ i}(1 ≤*l*_{ i}≤*r*_{ i}≤*n*). - The response to the query will be integer 1, if the elements of array
*a*can be rearranged so as the sum*a*_{ l i}+*a*_{ l i + 1}+ ... +*a*_{ r i}= 0, otherwise the response to the query will be integer 0.

Help Eugeny, answer all his queries.

Input

The first line contains integers *n* and *m* (1 ≤ *n*, *m* ≤ 2·10^{5}). The second line contains *n* integers *a* _{1}, *a* _{2}, ..., *a* _{ n} (*a* _{ i} = -1, 1). Next *m* lines contain Eugene's queries. The *i*-th line contains integers *l* _{ i}, *r* _{ i} (1 ≤ *l* _{ i} ≤ *r* _{ i} ≤ *n*).

Output

Print *m* integers — the responses to Eugene's queries in the order they occur in the input.

Examples

Input

2 3

1 -1

1 1

1 2

2 2

Output

0

1

0

Input

5 5

-1 1 1 1 -1

1 1

2 3

3 5

2 5

1 5

Output

0

1

0

1

0

Codeforces (c) Copyright 2010-2020 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Aug/04/2020 20:52:55 (h1).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|