eval_in_evalstore(TypedFormula,StoreExpr,NewIdentifiers,Timeout,Result) :-
reset_errors,
expand_node(StoreExpr,Store),
get_texpr_type(TypedFormula,Type),
empty_state(Empty),
set_up_typed_localstate(NewIdentifiers,_NewValues,TypedVals,Empty,LocalStore,positive),
init_wait_flags(WF),
b_tighter_enumerate_values(TypedVals,WF),
time_out_eval(Timeout,Type,TypedFormula,LocalStore,Store,WF,Result1,TOResult),
( TOResult \== success ->
Result = timeout
; error_occurred(Result1,Msg) ->
Result = error(Msg)
; Result1 = ok(V,ResultStore) ->
update_store(StoreExpr,ResultStore,NewStore),
Result = ok(V,NewStore)
).