Implements Apply