Mesh

Consider a set of N points with floating point coordinates (xi, yi), 1 ≤ i ≤ N in the two-dimensional space, and a circle of radius R.

The circle is initially placed at coordinates (Cx, Cy), and touches two points with indices a, b (that is, the two points are on the surface of the circle, and there are no points inside). An operation is defined by choosing one of the two points on the circle and using it as a pivot. The circle is rotated smoothly around the pivot, until it touches some other point. During an operation, the circle must be in contact with the pivot, and no points can lie inside of it.

Operations can be applied in any order, and points can be reached multiple times. Your task is to determine the largest possible set of points that can be reached by the circle, after any number of operations.


Input

The first line of input contains integers N, R.
The second line of input contains integers a, b.
The third line of input contains two real values: Cx, Cy.
Each of the following N lines contains two real values xi, yi.

Output

The first line of output should contain K - the size of the largest set of reachable points.
The second line of output should contain K space separated integers: the indices of reachable points, in ascending order.

Constraints

  • 2 ≤ N ≤ 4000
  • 10 ≤ R ≤ 200
  • 0 ≤ xi, yi ≤ 1000
  • It is guaranteed that at most 200 reachable points exist.

Sample

InputOutput
28 100
1 2
130.24592005116466 860.8676393142922
34.836747 890.819095
64.021355 785.938960
102.596051 664.563259
141.099920 560.969361
188.422746 455.729995
208.064904 350.871960
228.860912 244.639695
257.967430 140.765620
286.070657 34.252475
306.448235 155.011730
335.702792 260.082035
363.452510 365.653450
412.770018 469.020465
441.483855 575.141420
470.276273 680.240975
518.913148 589.302889
558.786385 485.650674
596.158261 379.986359
636.515020 275.996974
693.153885 185.706935
741.931640 95.853499
791.536896 215.859490
810.909774 335.399804
829.687212 455.287965
858.456210 560.634731
879.138851 665.803459
907.103038 770.922214
955.217464 874.904969
28
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

This testcase corresponds to the animation shown above. All 28 points can be reached by the circle.

Questions?

Sponsors Gold