Solution:
1...Rh7/Rh6/Rh5/Rh4/Rh3/Rh2/Rh1 2.Qxg8#
1...Bd2/Be1/Bxd4/Bb2/Ba1/Bb4 2.c4#
1...Nxd6 2.Qxd6#
1...Bh7/Bf7 2.Qf7#
1.Ne2? (2.Bg2#[A])
1...Bd4 2.Rxd4#
1...Ne3/Nf2 2.Nxc3#
1...Rh3/Rh2 2.Qxg8#
1...Nxd6 2.Qxd6#
but 1...Nxc5[b]!
1.Ne6? (2.Bg2#[A]/Bc4#[B])
1...Nb2/Rxc5[a] 2.Bg2#[A]
1...Nf2/Nxc5[b]/Rh3/Rh2 2.Bc4#[B]
1...Nxd6 2.Qxd6#
1...Bd4 2.c4#/Rxd4#
but 1...Ne3!
1.Nf3? (2.Bc4#[B])
1...Ne3/Nb2 2.Nxe3#
1...Bd4 2.c4#/Rxd4#
1...Nxd6 2.Qxd6#
but 1...Rxc5[a]!
1.Nb3? (2.Bg2#[A]/Bc4#[B])
1...Nb2/Rxc5[a] 2.Bg2#[A]
1...Nf2/Nxc5[b] 2.Bc4#[B]
1...Bd4 2.c4#/Rxd4#
1...Rh3/Rh2 2.Bc4#[B]/Qxg8#
1...Nxd6 2.Qxd6#
but 1...Ne3!
1.Nb5? (2.Bg2#[A]/Bc4#[B])
1...Nxc5[b] 2.Bc4#[B]
1...Ne3 2.Nxc3#
1...Nf2 2.Nxc3#/Bc4#[B]
1...Nb2 2.Bg2#[A]/Nxc3#
1...Bd4 2.c4#/Rxd4#
1...Rh3/Rh2 2.Qxg8#/Bc4#[B]
1...Nxd6 2.Qxd6#
but 1...axb5+!
3 tries skipped1.Nxf6+??
1...Ke5 2.Re4#
but 1...gxf6!
1.Qxf6?? (2.Qe5#)
1...Bxd4 2.Rxd4#/c4#/Qxd4#
but 1...gxf6!
1.Qe8?? (2.Qe4#/Qc6#)
1...Nxc5[b]/Nxd6 2.Qc6#
1...Nf2 2.Qc6#/Ne3#
1...Nd8 2.Qe4#
1...Be6 2.Qxe6#/Qc6#
but 1...Rxc5[a]!
1.Nc6[C]! (2.Ne7#)
1...Rxc5[a] 2.Bg2#[A]
1...Nxc5[b] 2.Bc4#[B]
1...Kxc5 2.Nb4#