reviewed code corrected