PartInput freedInput = conn.getDestination();
Gem.PartOutput disconnectedOutput = conn.getSource();
// (HACK!?) Temporarily re-bind a connection so that argument target resolution can take place for the connected tree.
// Collectors targeted by arguments on trees rooted at collectors at inner scopes of the current tree will be affected.
freedInput.bindConnection(conn);
disconnectedOutput.bindConnection(conn);
// Find collectors targeted by free inputs in the descendant gem forest
// (when considering the gem graph after connection)
List<PartInput> freeInputsInDescendantForestList =