fn parse_float<Fl>(type_name: &'static str, s: &str) -> Result<Fl, ParseError>where Fl: NumFloat + FromStr,