OMRSTWPYKHLIASBIXECZ4YIVF5AUEULGFYZT72YHUIWFFMUJYTMQC
YGCYIX6C7RUO57HT5F53FIGQYZGGFCFE6YCKC5EUWR2SMUASVKKQC
EYPCPIP762LUUJ6TLBXU4ZFERH3DEXPYJP65DNCSQTIGFHGW35ZQC
// Delete old edges from source to target. for i, e := range source.Edges {
// Delete old edges from source to target.
for i, e := range source.Edges {
found := false // Look for the old edge and update it if it is found. for _, e := range source.Edges {
found := false
// Look for the old edge and update it if it is found.
for _, e := range source.Edges {
source.Edges = append(source.Edges[:i], source.Edges[i+1:]...)
found = true e.Change = change e.Flag = ne.Flag
found = true
e.Change = change
e.Flag = ne.Flag
for i, e := range target.ReverseEdges { if e.Change == introducedBy && e.From == source && e.To == target { target.ReverseEdges = append(target.ReverseEdges[:i], target.ReverseEdges[i+1:]...) break }
for i, e := range target.ReverseEdges {
if e.Change == introducedBy && e.From == source && e.To == target {
target.ReverseEdges = append(target.ReverseEdges[:i], target.ReverseEdges[i+1:]...)
break
}
if !found { makeEdge(change, ne.Flag, source, target)
if !found {
makeEdge(change, ne.Flag, source, target)