///|
fn main {
  let style =
    #|
  let items = [
    @mooncite.Item::new("a")
    .set_string("title", "Zulu")
    .set_name("author", [@mooncite.CslName::new("Doe", given="Jane")])
    .set_date("issued", @mooncite.CslDate::new(2025)),
    @mooncite.Item::new("z")
    .set_string("title", "Alpha")
    .set_name("author", [@mooncite.CslName::new("Doe", given="John")])
    .set_date("issued", @mooncite.CslDate::new(2025)),
  ]
  let processor = @mooncite.Processor::from_style(style).unwrap()
  let document = processor
    .render_document(items, [
      [@mooncite.Cite::new("a")],
      [@mooncite.Cite::new("z")],
      [@mooncite.Cite::new("a")],
    ])
    .unwrap()
  println("Document clusters (common item universe):")
  for citation in document.citations {
    println(citation)
  }
  println("Bibliography:")
  println(document.bibliography)
  let advanced = style.replace(
    old="disambiguate-add-year-suffix",
    new="disambiguate-add-names",
  )
  println("Unsupported disambiguation:")
  for issue in @mooncite.style_compatibility_issues(advanced) {
    println(issue)
  }
  let history = ""
  println("Unsupported history:")
  for issue in @mooncite.style_compatibility_issues(history) {
    println(issue)
  }
}