remove dependency on Data.List.Split