NFA concatenation half done
replace FinSet with built-in Dat Data.Fin.Subset