chess mate in 3 moves

I suggest reading is for some people quite difficult, so let´s summarize:
1.Nf5
1...Be5/f6/g7 2.Rh1#
1...Bd4 2.Rh1+ Bg1 3.Rxg1#
1...Bb2 2.Rh1+ Bc1 3.Rxc1#
1...Bxh8 2.Ng7 Bxg7 3.Bxg7#
1...Be1/d2/b4/a5 2.Bg7+ Bc3 3.Bxc3#
Note that Bxg7 is the only move black has, otherwise it would have been stalemate.
I must say this IS a very good puzzle, thanks for posting & posting the solution!