sig
  module Scanning :
    sig
      type in_channel
      type scanbuf = Scanf.Scanning.in_channel
      val stdin : Scanf.Scanning.in_channel
      type file_name = string
      val open_in : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val open_in_bin : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val close_in : Scanf.Scanning.in_channel -> unit
      val from_file : Scanf.Scanning.file_name -> Scanf.Scanning.in_channel
      val from_file_bin : string -> Scanf.Scanning.in_channel
      val from_string : string -> Scanf.Scanning.in_channel
      val from_function : (unit -> char) -> Scanf.Scanning.in_channel
      val from_channel : Stdlib.in_channel -> Scanf.Scanning.in_channel
      val end_of_input : Scanf.Scanning.in_channel -> bool
      val beginning_of_input : Scanf.Scanning.in_channel -> bool
      val name_of_input : Scanf.Scanning.in_channel -> string
    end
  type ('a, 'b, 'c, 'd) scanner =
      ('a, Scanf.Scanning.in_channel, 'b, 'c, '-> 'd, 'd) Stdlib.format6 ->
      'c
  type ('a, 'b, 'c, 'd) scanner_opt =
      ('a, Scanf.Scanning.in_channel, 'b, 'c, '-> 'd option, 'd)
      Stdlib.format6 -> 'c
  exception Scan_failure of string
  val bscanf : Scanf.Scanning.in_channel -> ('a, 'b, 'c, 'd) Scanf.scanner
  val bscanf_opt :
    Scanf.Scanning.in_channel -> ('a, 'b, 'c, 'd) Scanf.scanner_opt
  val sscanf : string -> ('a, 'b, 'c, 'd) Scanf.scanner
  val sscanf_opt : string -> ('a, 'b, 'c, 'd) Scanf.scanner_opt
  val scanf : ('a, 'b, 'c, 'd) Scanf.scanner
  val scanf_opt : ('a, 'b, 'c, 'd) Scanf.scanner_opt
  val kscanf :
    Scanf.Scanning.in_channel ->
    (Scanf.Scanning.in_channel -> exn -> 'd) ->
    ('a, 'b, 'c, 'd) Scanf.scanner
  val ksscanf :
    string ->
    (Scanf.Scanning.in_channel -> exn -> 'd) ->
    ('a, 'b, 'c, 'd) Scanf.scanner
  val bscanf_format :
    Scanf.Scanning.in_channel ->
    ('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 ->
    (('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 -> 'g) -> 'g
  val sscanf_format :
    string ->
    ('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 ->
    (('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 -> 'g) -> 'g
  val format_from_string :
    string ->
    ('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6 ->
    ('a, 'b, 'c, 'd, 'e, 'f) Stdlib.format6
  val unescaped : string -> string
end