Updated implementations to better match abstract classes.