finish reconsitution all of the functions and make the last version