pub mod logging_abstraction {
pub trait Logger {
fn open(&mut self) -> Option<std::io::Error>;
fn write_slice<T: std::fmt::Display>(&self, to_write: &[&T]) -> Option<std::io::Error>;
fn write<T: std::fmt::Display>(&self, to_write: T) -> Option<std::io::Error>;
}
}