Implements abstract methods.