public void caseAMultipleCommand(AMultipleCommand originalNode) {
// Recurse through child nodes first. Because the optimised node doesn't
// handle replacement, go leaves-first.
super.caseAMultipleCommand(originalNode);
// Replace this node with the optimized version.
originalNode.replaceBy(new AOptimizedMultipleCommand(originalNode));
}