main = do
let f g i xs
= [g
(take i
' . drop i'') xs | i' <- [1..i
], i
'' <- [0..i
- i
']] print $ sum [1 | matr' <- f
id n matr
, matr
'' <- f
concatMap m matr
', sum matr'' == k]
bWFpbiA9IGRvCgltOm46azpfIDwtIGZtYXAgKG1hcCByZWFkIC4gd29yZHMpIGdldExpbmUKCW1hdHIgPC0gZm1hcCAobWFwIChtYXAgKHJlYWQgLiByZXR1cm4pKSAuIGxpbmVzKSBnZXRDb250ZW50cwoJbGV0IGYgZyBpIHhzID0gW2cgKHRha2UgaScgLiBkcm9wIGknJykgeHMgfCBpJyA8LSBbMS4uaV0sIGknJyA8LSBbMC4uaSAtIGknXV0KCXByaW50ICQgc3VtIFsxIHwgbWF0cicgPC0gZiBpZCBuIG1hdHIsIG1hdHInJyA8LSBmIGNvbmNhdE1hcCBtIG1hdHInLCBzdW0gbWF0cicnID09IGtd