public T[] Element(decimal m) { decimal actual = m; long main = (long)(actual / Sub.TotalCombinations); long sub = (long)actual - main * Sub.TotalCombinations; T[] mainElements = Main.Element(main); T[] subElements = Sub.Element(sub); return(mainElements.Concat(subElements).ToArray()); }