#P2168. 保护rcx

保护rcx

Problem Description

题目描述

长为 nn 宽为 mm 的地图中qwq想要狙击rcx,qwq在点 (x0,y0)(x_0,y_0) rcx在点 (x1,y1)(x_1,y_1) 上,qwq可以从任意角度发射出激光经过墙壁反射后狙击rcx(激光可以经过无数次反射击中rcx),而你为了保护rcx要在地图上选择一系列点放置拦截器去吸收激光从而保护rcx,请问最少需要放置多少个拦截器,并输出拦截器放置的坐标。

输入格式

第一行输入两个正整数 nn 和 mm ,分别为方框的长和宽。 第二行输入四个整数 x0,y0,x1,y1x_0,y_0,x_1,y_1,分别为qwq坐标 (x0,y0)(x_0,y_0) 和rcx坐标 (x1,y1)(x_1,y_1) 。

输出格式

第一行输出一个整数 nn 为阻挡器的个数,如果不能使用有限个阻挡器则输出 −1-1 。 若 nn 不为 −1-1 ,接下来 nn 行每一行输出两个数 xi,yi(0≤xi≤n,0≤yi≤m)x_i,y_i(0 \le x_i \le n ,0 \le y_i \le m) 为第 ii 个阻挡器的坐标。你可以按照任意的顺序输出阻挡器的坐标,对于你输出的每一个坐标 voutv_{out},若其与对应标准答案 vansv_{ans} 满足以下条件,则被判定为正确:$\frac{|v_{out} - v_{ans}|}{\max(1, |v_{ans}|)} \le 10^{-6}$。

样例

Input:

10 10 
0 0 4 6

Output:

4 
2 3 
2 7 
8 3 
8 7

数据范围

1≤n,m≤1e91 \le n,m \le 1e9

0≤x0,x1≤n0 \le x_0,x_1 \le n

0≤y0,y1≤m0 \le y_0,y_1 \le m

Output Format

Sample