revised the content into versions 1, 2, 3