corrected and completed