todo revised.2