pub fn analyze(config: &Config, program: &Program) -> State