I have not implemented I/O on a Haas, But I would think the two optional FIN signals are or-ed in the controller, if there are two of them.
But normally the logic that implements an M code is written to either expect a FIN signal or to output without waiting for FIN, my question is, are you sure the M21 waits for a FIN signal?
For what is required on the FIN input, you need to know the nature of the input card? Is it sink or source contact closure?
I am just going by experience in Mitsubishi and Fanuc, I assume Haas uses the same principle.
But there I could be wrong!!