///|
fn main {
  let base_text =
    #|[server]
    #|host = localhost
    #|port = 8080
    #|mode = development
    #|
    #|[auth]
    #|token = local-token
  let prod_text =
    #|[server]
    #|host = prod.example.test
    #|mode = production
    #|
    #|[auth]
    #|oauth = on
  let base = @lib.parse_ini("base.ini", base_text).document
  let prod = @lib.parse_ini("prod.ini", prod_text).document
  let view = @lib.merge_layers([
    @lib.layer("base", 0, base),
    @lib.layer("prod", 10, prod),
  ])
  let diagnostics = @lib.validate(view, [
    @lib.required("server.host"),
    @lib.int_range("server.port", Some(1), Some(65535)),
    @lib.enum_value("server.mode", ["development", "test", "production"]),
    @lib.secret_like("auth.token"),
  ])
  println(@lib.render_markdown_report(view, diagnostics))
}