sig   type 'a seq   val empty : 'Odig.Private.Dot.seq   val ( ++ ) :     'Odig.Private.Dot.seq ->     'Odig.Private.Dot.seq -> 'Odig.Private.Dot.seq   type id = string   type st   type att   type t   val edge :     ?atts:Odig.Private.Dot.att Odig.Private.Dot.seq ->     Odig.Private.Dot.id ->     Odig.Private.Dot.id -> Odig.Private.Dot.st Odig.Private.Dot.seq   val node :     ?atts:Odig.Private.Dot.att Odig.Private.Dot.seq ->     Odig.Private.Dot.id -> Odig.Private.Dot.st Odig.Private.Dot.seq   val atts :     [ `Edge | `Graph | `Node ] ->     Odig.Private.Dot.att Odig.Private.Dot.seq ->     Odig.Private.Dot.st Odig.Private.Dot.seq   val att : string -> string -> Odig.Private.Dot.att Odig.Private.Dot.seq   val label : string -> Odig.Private.Dot.att Odig.Private.Dot.seq   val color : string -> Odig.Private.Dot.att Odig.Private.Dot.seq   val subgraph :     ?id:Odig.Private.Dot.id ->     Odig.Private.Dot.st Odig.Private.Dot.seq ->     Odig.Private.Dot.st Odig.Private.Dot.seq   val graph :     ?id:Odig.Private.Dot.id ->     ?strict:bool ->     [ `Digraph | `Graph ] ->     Odig.Private.Dot.st Odig.Private.Dot.seq -> Odig.Private.Dot.t   val buffer_add : Buffer.t -> Odig.Private.Dot.t -> unit   val to_string : Odig.Private.Dot.t -> string   val output : Pervasives.out_channel -> Odig.Private.Dot.t -> unit end