public function decode($value, Field $field, Codec $codec = null)
    {
        if (empty($value)) {
            return null;
        }

        if ($value instanceof \DateTimeInterface) {
            return $this->convertToUtc($value);
        }

        $date = \DateTimeImmutable::createFromFormat(DateUtils::ISO8601_ZULU, str_replace('+00:00', 'Z', $value));
        if ($date instanceof \DateTimeInterface) {
            return $this->convertToUtc($date);
        }

        throw new DecodeValueFailed(
            $value,
            $field,
            sprintf(
                'Format must be [%s].  Errors: [%s]',
                DateUtils::ISO8601_ZULU,
                // this is mutant
                print_r(\DateTimeImmutable::getLastErrors() ?: \DateTime::getLastErrors(), true)
            )
        );
    }
public function decode($value, Field $field, Codec $codec = null)
    {
        if (empty($value)) {
            return null;
        }

        if ($value instanceof \DateTimeInterface) {
            return $this->convertToUtc($value);
        }

        $date = \DateTimeImmutable::createFromFormat(DateUtils::ISO8601_ZULU, str_replace('+00:00', 'Z', $value));
        if ($date instanceof \DateTimeInterface) {
            return $this->convertToUtc($date);
        }

        throw new DecodeValueFailed(
            $value,
            $field,
            sprintf(
                'Format must be [%s].  Errors: [%s]',
                DateUtils::ISO8601_ZULU,
                // this is mutant
                print_r(\DateTimeImmutable::getLastErrors() ?: \DateTime::getLastErrors(), true)
            )
        );
    }
{@inheritdoc}