Only evaluation is missing.
Completed version 1.