updated with deterministic model