continue to generalize edge manipulations