nearly completed version