use crate::consts::{DAYSEC, DJM0, DJM77, ELB, TDB0, TTMTAI};
pub fn tdbtcb(tdb1: f64, tdb2: f64) -> Result<(f64, f64), i32> {
const T77TD: f64 = DJM0 + DJM77;
let t77tf: f64 = TTMTAI / DAYSEC;
let tdb0_val: f64 = TDB0 / DAYSEC;
let elbb: f64 = ELB / (1.0 - ELB);
let (d, f);
let (tcb1, tcb2);
if tdb1.abs() > tdb2.abs() {
d = T77TD - tdb1;
f = tdb2 - tdb0_val;
tcb1 = tdb1;
tcb2 = f - (d - (f - t77tf)) * elbb;
} else {
d = T77TD - tdb2;
f = tdb1 - tdb0_val;
tcb1 = f - (d - (f - t77tf)) * elbb;
tcb2 = tdb2;
}
Ok((tcb1, tcb2))
}