use std::io::{BufReader, Read, Write};
use std::path::Path;
use std::time::Instant;
use anyhow::{Context, Result};
use serde::Deserialize;
use crate::atomic::{AtomicWriteOptions, atomic_write};
use crate::checksum;
pub use crate::cli::FuzzyMode;
use crate::cli::{EditArgs, GlobalArgs};
use crate::commands::{read_stdin_text_guarded, resolve_backup};
use crate::error::AtomwriteError;
use crate::fuzzy::FuzzyInfo;
use crate::ndjson_types::{EditOutput, PairResult};
use crate::output::NdjsonWriter;
include!("pairs.inc.rs");
include!("single.inc.rs");
include!("multi.inc.rs");
include!("apply.inc.rs");
include!("lines.inc.rs");