T[] Concat(params T[][] arrays) { List output = new List(); for(int i = 0; i < arrays.Length; i++) { output.AddRange(arrays[i]); } return output.ToArray(); } //csharp/8448