let overwrite_state env state = function
  | Pre -> { env with e_pre = state }
  | Here -> { env with e_here = state }
  | Old -> { env with e_old = Some state }
  | Post -> { env with e_post = Some state }