#P1290F. Making Shapes
Making Shapes
No submission language available for this problem.
Description
You are given pairwise non-collinear two-dimensional vectors. You can make shapes in the two-dimensional plane with these vectors in the following fashion:
- Start at the origin .
- Choose a vector and add the segment of the vector to the current point. For example, if your current point is at and you choose the vector , draw a segment from your current point to the point at and set your current point to .
- Repeat step 2 until you reach the origin again.
You can reuse a vector as many times as you want.
Count the number of different, non-degenerate (with an area greater than ) and convex shapes made from applying the steps, such that the shape can be contained within a square, and the vectors building the shape are in counter-clockwise fashion. Since this number can be too large, you should calculate it by modulo .
Two shapes are considered the same if there exists some parallel translation of the first shape to another.
A shape can be contained within a square if there exists some parallel translation of this shape so that every point inside or on the border of the shape satisfies .
The first line contains two integers and — the number of vectors and the size of the square (, ).
Each of the next lines contains two integers and — the -coordinate and -coordinate of the -th vector (, ).
It is guaranteed, that no two vectors are parallel, so for any two indices and such that , there is no real value such that and .
Output a single integer — the number of satisfiable shapes by modulo .
Input
The first line contains two integers and — the number of vectors and the size of the square (, ).
Each of the next lines contains two integers and — the -coordinate and -coordinate of the -th vector (, ).
It is guaranteed, that no two vectors are parallel, so for any two indices and such that , there is no real value such that and .
Output
Output a single integer — the number of satisfiable shapes by modulo .
Samples
Note
The shapes for the first sample are:

The only shape for the second sample is:

The only shape for the fourth sample is:
