}
if (to != null) {
// TODO: to may be null if the connecting node has already been removed. This is
// not supposed to be possible according to the contract for RouteRemovedChange,
// but it happens when removing a sibling route. Fix this inconsistency.
GraphEdge edge = getEdgeForRemovedRoute(route, from, to);
// TODO: edge may be null here if a Script that launches another Operation is removed.
// This is another unfortunate side effect of the current event notification system
if (edge != null) {
eventSupport.fireNodesDisconnected(edge);
}