sig
  module Wood :
    sig
      type woods =
          P_WoodGrain1A
        | P_WoodGrain1B
        | P_WoodGrain2A
        | P_WoodGrain2B
        | P_WoodGrain3A
        | P_WoodGrain3B
        | P_WoodGrain4A
        | P_WoodGrain4B
        | P_WoodGrain5A
        | P_WoodGrain5B
        | P_WoodGrain6A
        | P_WoodGrain6B
        | P_WoodGrain7A
        | P_WoodGrain7B
        | P_WoodGrain8A
        | P_WoodGrain8B
        | P_WoodGrain9A
        | P_WoodGrain9B
        | P_WoodGrain10A
        | P_WoodGrain10B
        | P_WoodGrain11A
        | P_WoodGrain11B
        | P_WoodGrain12A
        | P_WoodGrain12B
        | P_WoodGrain13A
        | P_WoodGrain13B
        | P_WoodGrain14A
        | P_WoodGrain14B
        | P_WoodGrain15A
        | P_WoodGrain15B
        | P_WoodGrain16A
        | P_WoodGrain16B
        | P_WoodGrain17A
        | P_WoodGrain17B
        | P_WoodGrain18A
        | P_WoodGrain18B
        | P_WoodGrain19A
        | P_WoodGrain19B
        | T_Wood1
        | T_Wood2
        | T_Wood3
        | T_Wood4
        | T_Wood5
        | T_Wood6
        | T_Wood7
        | T_Wood8
        | T_Wood9
        | T_Wood10
        | T_Wood11
        | T_Wood12
        | T_Wood13
        | T_Wood14
        | T_Wood15
        | T_Wood16
        | T_Wood17
        | T_Wood18
        | T_Wood19
        | T_Wood20
        | T_Wood21
        | T_Wood22
        | T_Wood23
        | T_Wood24
        | T_Wood25
        | T_Wood26
        | T_Wood27
        | T_Wood28
        | T_Wood29
        | T_Wood30
        | T_Wood31
        | T_Wood32
        | T_Wood33
        | T_Wood34
        | T_Wood35
      val to_string : Povray.Textures.Wood.woods -> string
    end
  module Stone :
    sig
      type stones =
          T_Grnt0
        | T_Grnt1
        | T_Grnt2
        | T_Grnt3
        | T_Grnt4
        | T_Grnt5
        | T_Grnt6
        | T_Grnt7
        | T_Grnt8
        | T_Grnt9
        | T_Grnt10
        | T_Grnt11
        | T_Grnt12
        | T_Grnt13
        | T_Grnt14
        | T_Grnt15
        | T_Grnt16
        | T_Grnt17
        | T_Grnt18
        | T_Grnt19
        | T_Grnt20
        | G1
        | G2
        | G3
        | G4
        | T_Grnt21
        | T_Grnt22
        | T_Grnt23
        | T_Grnt24
        | T_Grnt25
        | T_Grnt26
        | T_Grnt27
        | T_Grnt28
        | T_Grnt29
        | T_Grnt0a
        | T_Grnt1a
        | T_Grnt2a
        | T_Grnt3a
        | T_Grnt4a
        | T_Grnt5a
        | T_Grnt6a
        | T_Grnt7a
        | T_Grnt8a
        | T_Grnt9a
        | T_Grnt10a
        | T_Grnt11a
        | T_Grnt12a
        | T_Grnt13a
        | T_Grnt14a
        | T_Grnt15a
        | T_Grnt16a
        | T_Grnt17a
        | T_Grnt18a
        | T_Grnt19a
        | T_Grnt20a
        | T_Grnt21a
        | T_Grnt22a
        | T_Grnt23a
        | T_Grnt24a
        | T_Crack1
        | T_Crack2
        | T_Crack3
        | T_Crack4
        | T_Stone1
        | T_Stone2
        | T_Stone3
        | T_Stone4
        | T_Stone5
        | T_Stone6
        | T_Stone7
        | T_Stone8
        | T_Stone9
        | T_Stone10
        | T_Stone11
        | T_Stone12
        | T_Stone13
        | T_Stone14
        | T_Stone15
        | T_Stone16
        | T_Stone17
        | T_Stone18
        | T_Stone19
        | T_Stone20
        | T_Stone21
        | T_Stone22
        | T_Stone23
        | T_Stone24
        | T_Stone25
        | T_Stone26
        | T_Stone27
        | T_Stone28
        | T_Stone29
        | T_Stone30
        | T_Stone31
        | T_Stone32
        | T_Stone33
        | T_Stone34
        | T_Stone35
        | T_Stone36
        | T_Stone37
        | T_Stone38
        | T_Stone39
        | T_Stone40
        | T_Stone41
        | T_Stone42
        | T_Stone43
        | T_Stone44
      val to_string : Povray.Textures.Stone.stones -> string
    end
  type texture_def =
      Stone of Povray.Textures.Stone.stones
    | Wood of Povray.Textures.Wood.woods
  val to_string : Povray.Textures.texture_def -> string
end