}
Gem result = null;
for (int gemN = 0; gemN < boundGemList.size(); ++gemN) {
BoundGemDescription gemDescription = boundGemList.get(gemN);
FunctionalAgentGem zipGem = new FunctionalAgentGem(calServices.getGemEntity(zippingGems[gemDescription.getVariableBindingCount()]));
FunctionalAgentGem zippingFunctionGem = new FunctionalAgentGem(calServices.getGemEntity(gemDescription.getQualifiedName()));
gemGraph.addGem(zipGem);
gemGraph.addGem(zippingFunctionGem);
connectInputs (zipGem, zippingFunctionGem, gemDescription, gemGraph);