c))(input)
}

pub fn string_allowed_in_field<'a>(input: &'a str) -> IResult<&'a str, String> {
    let (input, ss) = many1(alt((alphanumeric1, tag("_"))))(input)?;

    Ok((input, ss.into_iter().collect::<String>()))
}

pub fn integer<'a>(input: &'a str) -> IResult<&'a str, u64> {
    let (input, s) = digit1(input)?;
    match s.parse::<u64>() {
        Ok(i) => Ok((input, i)),
        Err(_) => Err(nom::Err::Error(ParseError::from_error_kind(
            input,
            ErrorKind::Float,
        ))),
    }
}

// Unlike nom::complete::{float, double}, this function does not parse `inf` keyword
pub fn float_number<'a>(input: &'a str) -> IResult<&'a str, Expr> {
    let (input, s) = recognize_float(input)?;
    match s.parse::<f64>() {
        Ok(f) => Ok((input, Expr::from(f))),
        Err(_) => Err(nom::Err::Error(ParseError::from_error_kind(
            input,
            ErrorKind::Float,
        ))),
    }
}

pub fn string<'a>(input: &'a str) -> IResult<&'a str, &'a str> {
    alt((
        preceded(char('"'), cut(terminated(parse_str, char('"')))),
        preceded(char('\''), cut(terminated(parse_str, char('\'')))),
    ))(input)
}

fn parse_str<'a, E: ParseError<&'a str>>(i: &'a str) -> IResult<&'a str, &'a str, E> {
    escaped(
        alt((alphanumeric1, space1, tag("%"))),
        '\\',
        one_of("\"n\\"),
    )(i)
}

#[cfg(test)]
mod tests {
    use super::float_number;
    use crate::sql::Expr;
    use crate::value::PqlValue;

    fn float(input: &str) -> anyhow::Result<Expr> {
        match float_number(input) {
            Ok((_, f)) => Ok(f),
            Err(_err) => anyhow::bail!("fail"),
        }
    }

    #[test]
    fn parse_float_number() -> anyhow::Result<()> {
        assert_eq!(float("3.4E3")?, Expr::Value(PqlValue::from(3.4e3)));

        Ok(())
    }
}
NEW YORK, December 5, 2011 (Associated Press) – Moody's Investors Service on Friday changed its outlook on OfficeMax Inc. to "stable" from "negative" and affirmed the retailer's "B1" corporate family and probability of default ratings, and said the company's "worst days are behind it."
"B1" is considered a non-investment grade, or "junk" level rating.
The ratings agency said the change in outlook to stable reflects its belief that the Naperville, Ill.-based chain's operating performance is likely to improve under management's new strategic plan.
The short-term positive impact on the company's credit metrics, however, is likely to be modest, it said.
Moody's Senior Analyst Charlie O'Shea said the outlook change reflects the firm's belief that, absent a double-dip recession, OfficeMax will be likely be able to solidify its B1 positioning.
The agency said OfficeMax ratings could be upgraded if its operating performance improves significantly. If the company is unable to continue to improve its credit profit, it could see a downgrade.
OfficeMax is the third-largest office supplies retailer in the country.
Good Governance, Corruption and Developing Nations: The Role of the Media.Will 2018 Be Fitbit’s Best Year Yet?
Look for a push into healthcare with its new Ionic smartwatch.
Fitbit (NYSE:FIT) stock is a far cry from its high of over $50 two short months after its IPO in June 2015. Declining sales and a significant write-off the last Q4 pushed the company to declare 2017 a "rebuilding" year. With its rebuilding year behind it, find out more about Fitbit's newly released smartwatch and its push into the healthcare space that could give this fitness tracker company a second wind.
Last year, Fitbit had the goal of getting back to growth and profitability. The company started 2017 behind, with unsold trackers on retailers' shelves from the underwhelming 2016 holiday season. This glut of inventory impacted the first half of the company's revenue results, putting a damper on sales growth.
Data from company filings. Chart by author.
The third quarter saw glimmers of revenue growth with three of the four regions reporting sequential growth, resulting in an overall 11% sequential growth for the company. Fitbit's business outside the U.S. now makes up 38% of revenue, up from 29% a year ago. While Asia-Pacific revenue (including China) is still a small 8.5% of revenue, Fitbit announced a partnership with adidas that should help stir growth in China. All of these results were achieved with minimal help from its smartwatch.
Q3 was "adjusted EBITDA positive"
Good progress was made in 2017, but further improvement in these financial measures are highly dependent on the success of the company's smartwatch.
Fitbit announced its long-awaited smartwatch, the Ionic, at the end of September. Chief executive officer James Park called the effort "the largest R&D investment in the company's history." One of the goals for the smartwatch is to expand the addressable market for its devices. Management thinks a potential 40 million to 80 million "early majority and late majority adopters" could become new users of the Fitbit platform. While the Ionic opened to lukewarm reviews, management was positive about the initial sales of the device in the company's third-quarter earnings call. Park indicated that 58% of sales were to new customers, demonstrating the smartwatch was meeting the goal of expanding its user base.
Fitbit's smartwatch has some tough competition, including the big kahuna, the Apple smartwatch. While the Apple watch is on version three, the Ionic stacks up pretty well, with Fitbit's advantages being Ionic's four-day battery life and under $300 price tag. Another benefit is that Fitbit's devices are agnostic when it comes to mobile operating systems, allowing them to be connected with almost any mobile operating system.
While the smartwatch is a key consumer device for Fitbit, more importantly, it is an enabler for the company to expand into healthcare.
According to Fitbit, it has one of the "largest activity, exercise, and sleep databases" in the world, including 90 billion hours of heart rate data, 5.4 billion nights of sleep, 167 billion minutes of exercise tracked, not to mention the 85 trillion steps taken. This mountain of data along with research focused on "specific conditions such as diabetes, heart health, sleep disorders, and mental health" will allow Fitbit to fulfill its vision: "To make everyone in the world healthier." Park explained how this will drive demand for its devices.
By empowering people to take a more proactive approach to their health, either by helping identify possible health issues or simply helping people get healthier with intelligent insights, personalized guidance, and a motivation to reach their goals, we believe our devices can move from a nice-to-have to a must-have, which, in turn, will enable us to strengthen the durable nature of our business.
Fitbit's sensors on the Ionic combined with the company's software development kit can already detect sleep apnea and atrial fibrillation with less than 1% false-positives. While these functions are not yet approved by the U.S. Food and Drug Administration (FDA), the company was one of the nine tech companies selected by the FDA for a new digital health software precertification pilot program. This program will allow Fitbit to fast-track products considered "software as a medical device" for FDA approval.
This year could be the year that the company makes real progress in healthcare. Fitbit is positioned better than ever before with a capable smartwatch, a powerful software development kit to create health and wellness apps, and a partnership with the FDA on the health software precertification pilot program. If Fitbit is able to put these pieces together into a "must have" product, this could be the company's best year yet.
Will Regulators Derail Google's $2.1 Billion Takeover of Fitbit?
Hello all. It's time for a rather substantial giveaway. There's a catch though, you won't see everything that's being given away on this post. As the days go by I'll be dropping in and adding to the pile of awesome. First up, we've got a title from excellent manofthem(). Portal