avoid generic arrays