def METHOD_NAME(self, curr, next):
    ctext, cnum, ntext, nnum = curr + next
    if cnum == 1:
        if nnum < 1000000:
            return next
        ctext = "um"
    elif cnum == 100 and not nnum % 1000 == 0:
        ctext = "cento"
    if nnum < cnum:
        if cnum < 100:
            return ("%s e %s" % (ctext, ntext), cnum + nnum)
        return ("%s e %s" % (ctext, ntext), cnum + nnum)
    elif (not nnum % 1000000000) and cnum > 1:
        ntext = ntext[:-4] + "liões"
    elif (not nnum % 1000000) and cnum > 1:
        ntext = ntext[:-4] + "lhões"
    # correct "milião" to "milhão"
    if ntext == 'milião':
        ntext = 'milhão'
    if nnum == 100:
        ctext = self.hundreds[cnum]
        ntext = ""
    else:
        ntext = " " + ntext
    return (ctext + ntext, cnum * nnum)