時間制限 : sec, メモリ制限 : KB
English / Japanese  

多角形-点の包含

多角形 g と点 p について、pg に含まれる場合 "2"、pg の辺上にある場合 "1"、それ以外の場合 "0" と出力してください。

多角形 g は隣合う点 pipi+1 (1 ≤ in−1) を結ぶ線が多角形 g の辺になるような点の列 p1, p2,..., pn で表されます。点 pnp1 を結ぶ線も多角形 g の辺となります。

g は凸多角形とは限らないことに注意してください。

入力

入力は以下の形式で与えられます。

g (多角形をなす点の列)
q (クエリの数)
1st query
2nd query
:
qth query

g は点の列 p1,..., pn として以下の形式で与えられます。

n
x1 y1 
x2 y2
:
xn yn

1行目の n は点の数を表します。点 pi の座標は2つの整数 xi, yi で与えられます。点は、多角形の隣り合った点を反時計回りに訪問するような順番で与えられます。

各クエリについて1つの点 p の座標が与えられます。座標は2つの整数 xy で与えられます。

出力

各クエリについて、"2"、 "1" または "0" を1行に出力してください。

制約

  • 3 ≤ n ≤ 100
  • 1 ≤ q ≤ 1,000
  • −10,000 ≤ xi, yi ≤ 10,000
  • 多角形の点の座標はすべて異なる
  • 多角形の辺は共有する端点のみで交差する

入力例

4
0 0
3 1
2 3
0 3
3
2 1
0 2
3 2

出力例

2
1
0

Note

      解説