{"ast_node_type":"variable","tokens":[{"end":86,"kind":"keyword","start":0,"text":"let"}]}
                let then_diverges = mem::replace(&mut self.diverges, Diverges::Maybe);
                let then_ty = self.infer_expr_inner(then_branch, expected, ExprIsRead::Yes);
                let mut coerce = CoerceMany::new(expected.coercion_target_type(&mut self.table));