let umake graph ed = 
   match ed with
      Left _ -> Right "Choose an edge"
    | Right edge_id ->
      let (c,target,port) = DG.findedge edge_id graph
      in 
      if (DG.findnode c.sourceid graph).nname == Or
      then
        match target.nname with
          And -> overAnd (c,target,port) graph
        | LongOr -> overLongOr (c,target,port) graph
        | Or -> GrbTrFuseTwoAndOr.Tr.umake graph (Right edge_id)  
        | _ -> overBitstring (c,target,port) graph
      else Right "Source of the edge must be Or"