tested and corrected some methods