How many ways to fill in a square grid with certain restrictions

Suppose I have a 5×5 grid of squares. I would like to fill in 15 checkmarks in the squares such that (1) each of the 25 square cells contains at most one checkmark, (2) each row has exactly 3 checkmarks, and (3) each column has exactly 3 checkmarks. How many ways are there to fill in these 15 checkmarks?

More generally, suppose I have an $ n \times n $ square grid, and I would like to fill in $ mn$ checkmarks such that (1) each of the $ n^2$ square cells contains at most one checkmark, (2) each row has exactly m checkmarks, and (3) each column has exactly m checkmarks. How many ways are there to do so? If $ m=1,$ I think the answer is $ n!$ . But I am not sure about the general case.

Also, if I have an additional restriction that no checkmarks on the diagonal, i.e., no checkmark in the (1,1), (2,2),… (n,n) cells. How many ways are there?

Thanks very much! Wish all very happy new year!