// ============================================================
// Accumath Script Submission Template
// Download this file, fill in every field below, write your
// script, then upload the finished file on the Script Library page.
// This one file carries everything: the information AND the code.
// ============================================================

// Name of Script:
//
// Author (name for credit):
//
// Description — what your script does:
//
// Category (pick one):
//   Unit & measure | Structures & mechanical | Fluids & thermal |
//   Electrical & materials | Chemistry | Math core |
//   Data, teaching & QA | Other
//
// Inputs the caller provides (your script must never guess data):
//
// What it returns:
//
// Tests included: Yes / No
//
// Confirmation:
//   I confirm: 100% Rust, standard library only, no I/O, no fn main,
//   no unsafe, no dead code, no #[allow]; honest failure on bad input.
//   Approved scripts become Accumath's property for other users to use,
//   and I keep credit as the writer.
//
// ------------------------------------------------------------
// Write your script below. Rules:
//   - One public function. No fn main, no I/O, no unsafe.
//   - Return (steps, result) on success, or Err(String) on bad input.
//   - Never guess caller data: every input comes from the caller.
//   - Include tests, including failure paths.
// ------------------------------------------------------------

// Example shape (replace with your script):
// pub fn my_script(input: f64) -> Result<(Vec<String>, f64), String> {
//     if !input.is_finite() {
//         return Err("input must be finite".to_string());
//     }
//     let steps = vec![format!("Step 1: received {input}")];
//     Ok((steps, input))
// }

#[cfg(test)]
mod tests {
    // Put your tests here, including failure paths.
}
