protected function getLastStateHasChangedDate($subject, \ArrayAccess $context) { if ($subject instanceof LastStateHasChangedDateInterface) { return $subject->getLastStateHasChangedDate(); } else { throw new \InvalidArgumentException('Overwrite this method to implement a different type!'); } }