A macrocell on most modern CPLDs contains a sum-of-products combinatorial logic function and an optional flip-flop. The technology blueprint dates back to the early 7400 serics of ICs. The combinatorial logic function typically supports four to sixteen product terms with wide fan in. In other words, a macrocell may have many inputs, but the complexity of the logic function is limited. Contrast this to most FPGA logic blocks where the complexity is unlimited, but the logic function has just four inputs.