}
}
#[derive(Debug)]
pub enum GraphicClass {
    /// Generally the top graphic which displays all time-series. 
    Collated,
    /// A single time-series which displays un-transformed data directly from source.
    Source,
    /// Data that has been selected and transformed.
    Cleaned,
}
impl FromStr for GraphicClass {
    type Err = Error;
    fn from_str(s: &str) -> Result<Self, Error> {
        match s {
            "collated"  => Ok(GraphicClass::Collated),
            "source"    => Ok(GraphicClass::Source),
            "cleaned"   => Ok(GraphicClass::Cleaned),
            _           => Err(keytree_error(file!(), line!(), "Failed to parse GraphicClass")),
        }