int zipInput=0;
gemGraph.connectGems(zippingFunctionGem.getOutputPart(),zipGem.getInputPart(zipInput++));
//connect the parameters
for (int inputN = 0; inputN < boundGemDescription.getBindingCount(); ++inputN) {
InputBinding binding = boundGemDescription.getNthBinding(inputN);
Gem outputGem = binding.getOutputGem(calServices, gemGraph, bindingContext);
if (binding.isConstant()) {
gemGraph.connectGems(outputGem.getOutputPart(), zippingFunctionGem.getInputPart(inputN));
} else {
zippingFunctionGem.getInputPart(inputN).setBurnt(true);
gemGraph.connectGems(outputGem.getOutputPart(), zipGem.getInputPart(zipInput++));
}