add `eval_context
updated