first version_second revises