#abc289f. [abc289_f]Teleporter Takahashi

[abc289_f]Teleporter Takahashi

问题描述

Takahashi 在一个 xy 平面上。最初,他在点 (sx,sy)(s _ x,s _ y),他想要到达点 (tx,ty)(t _ x,t _ y)

在 xy 平面上有一个矩形 $R\\coloneqq\\lbrace(x,y)\\mid a-0.5\\leq x\\leq b+0.5,c-0.5\\leq y\\leq d+0.5\\rbrace$。考虑以下操作:

  • 选择一个包含在矩形 R 中的格点 (x,y)(x,y)。Takahashi 通过关于点 (x,y)(x,y) 的中心对称点进行传送。

判断在进行了 0 到 10610^6 次操作之后是否可以到达点 (tx,ty)(t _ x,t _ y)。如果可能,构造一系列的操作,将其带到点 (tx,ty)(t _ x,t _ y)

约束条件

  • 0leqsx,sy,tx,tyleq2times1050\\leq s _ x,s _ y,t _ x,t _ y\\leq2\\times10^5
  • 0leqaleqbleq2times1050\\leq a\\leq b\\leq2\\times10^5
  • 0leqcleqdleq2times1050\\leq c\\leq d\\leq2\\times10^5
  • 输入中的所有值都是整数。

输入

输入的格式如下:

sxs _ x sys _ y

txt _ x tyt _ y

aa bb cc dd

输出

第一行,如果 Takahashi 在重复操作 0 到 10610^6 次之后可以到达点 (tx,ty)(t _ x,t _ y),则打印 Yes,否则打印 No。如果并且仅当在第一行打印 Yes 时,在之后的 dd 行打印 dd 个操作序列的坐标,其中 dd 是您构造的操作序列的长度(dd 必须满足 0leqdleq1060\\leq d\\leq10^6)。第 (1+i)(1+i)(1leqileqd)(1\\leq i\\leq d) 应包含选择在第 ii 次操作中选择的点 (x,y)inR(x, y)\\in R 的坐标。


示例输入 1

1 2
7 8
7 9 0 3

示例输出 1

Yes
7 0
9 3
7 1
8 1

例如,以下选择会将 Takahashi 从 (1,2)(1,2) 带到 (7,8)(7,8)

  • 选择 (7,0)(7,0)。Takahashi 移动到 (13,2)(13,-2)
  • 选择 (9,3)(9,3)。Takahashi 移动到 (5,8)(5,8)
  • 选择 (7,1)(7,1)。Takahashi 移动到 (9,6)(9,-6)
  • 选择 (8,1)(8,1)。Takahashi 移动到 (7,8)(7,8)

任何满足条件的输出都是可接受的;例如,打印

Yes
7 3
9 0
7 2
9 1
8 1

也是可以接受的。


示例输入 2

0 0
8 4
5 5 0 0

示例输出 2

No

没有任何一系列操作可以将 Takahashi 带到点 (8,4)(8,4)


示例输入 3

1 4
1 4
100 200 300 400

示例输出 3

Yes

Takahashi 可能已经在一开始就到达目的地。


示例输入 4

22 2
16 7
14 30 11 14

示例输出 4

No