public function compare(\DateInterval $first, \DateInterval $second)
    {
        if ($this->safe) {
            $this->safecheck($first);
            $this->safecheck($second);
        }

        if ($first->y > $second->y) {
            return 1;
        }

        if ($first->y < $second->y) {
            return -1;
        }

        if ($first->m > $second->m) {
            return 1;
        }

        if ($first->m < $second->m) {
            return -1;
        }

        if ($first->d > $second->d) {
            return 1;
        }

        if ($first->d < $second->d) {
            return -1;
        }

        if ($first->h > $second->h) {
            return 1;
        }

        if ($first->h < $second->h) {
            return -1;
        }

        if ($first->i > $second->i) {
            return 1;
        }

        if ($first->i < $second->i) {
            return -1;
        }

        if ($first->s > $second->s) {
            return 1;
        }

        if ($first->s < $second->s) {
            return -1;
        }

        return 0;
    }