X2POHOVL2YB5G4GQZ3NO2HRFBZV3ANDWUIZW34GQXEI56AXSHO3AC
NLFSLCBOGCQYI2DQXLO5AWBBRABDS26NIX6HGUGO2KQG2OHQGWOQC
TD7KX2PIGP2TCZ2Q7XXNBBDJIQ2KXEIFWLBMWXTJE3OEXVV4L7MAC
IYW574EKVRH2QJ7GFNX4FMCNI7EMLNYYIC6NGHVIJVDEWSDL42GQC
QYLGEDIVYSUHAYU7ZLUZDA6OULFDDZYTQN264V3473MEXLFZ4U3AC
YMV7RPQ5TFBETNHRMS26MGHJXEAYRMIF4F7Z6ITGRCG65TOGSNDAC
VGDNIY332BPU4XV76EWOXVLXBZ5E6RXXT7JRWJYDVFBLUFT6U6KAC
XIWTRGR6SRVSX3TA6YZVMZIETMZNLJBQSJ3BAL3O6ZXURJPTHQZAC
// /// Return true if the durations between Points are all equal.
// pub fn is_regular(&self, duration: &MonthlyDate) -> bool {
// if self.len < 2 {
// return false
// } else {
// self.0.as_slice().windows(2).all(|datapoint_pair| {
// datapoint_pair[1].date() - datapoint_pair[0].date() == *duration
// })
// }
// }
///
pub fn expected_same_durations(
code_file: &str,
code_line: u32,
first_duration: &str,
second_duration: &str) -> Error
{
Error(format!(
"[time_series:02:{}:{}] Expected time-series to have same duration but had [{}] and [{}].",
code_file,
code_line,
first_duration,
second_duration,
))
}