implemented the four reared functions