this.questions.addAll(that.questions); this.numQuestions += that.numQuestions;
if (that.numQuestions > 0) { if (Collections.EMPTY_LIST.equals(this.questions)) this.questions = Collections.synchronizedList(new ArrayList(that.numQuestions));
    void append(DNSIncoming that)    {        if (this.isQuery() && this.isTruncated() && that.isQuery())        {            this.questions.addAll(that.questions);            this.numQuestions += that.numQuestions;            if (Collections.EMPTY_LIST.equals(answers))            {                answers = Collections.synchronizedList(new ArrayList());            }            if (that.numAnswers > 0)            {                this.answers.addAll(this.numAnswers, that.answers.subList(0, that.numAnswers));                this.numAnswers += that.numAnswers;            }            if (that.numAuthorities > 0)            {                this.answers.addAll(this.numAnswers + this.numAuthorities, that.answers.subList(that.numAnswers, that.numAnswers + that.numAuthorities));                this.numAuthorities += that.numAuthorities;            }            if (that.numAdditionals > 0)            {                this.answers.addAll(that.answers.subList(that.numAnswers + that.numAuthorities, that.numAnswers + that.numAuthorities + that.numAdditionals));                this.numAdditionals += that.numAdditionals;            }        }        else        {            throw new IllegalArgumentException();        }    }