'Return the dict to display in the curse interface.'

def msg_curse(self, args=None):

    ret = []
    if ((not self.stats) or (len(self.stats['containers']) == 0) or self.is_disable()):
        return ret
    msg = '{}'.format('CONTAINERS')
    ret.append(self.curse_add_line(msg, 'TITLE'))
    msg = '    {}'.format(len(self.stats['containers']))
    ret.append(self.curse_add_line(msg))
    msg = '    (served    by    Docker    {})'.format(self.stats['version']['Version'])
    ret.append(self.curse_add_line(msg))
    ret.append(self.curse_new_line())
    ret.append(self.curse_new_line())
    name_max_width = min(20, len(max(self.stats['containers'], key=(lambda x: len(x['name'])))['name']))
    msg = '    {:{width}}'.format('Name', width=name_max_width)
    ret.append(self.curse_add_line(msg))
    msg = '{:>26}'.format('Status')
    ret.append(self.curse_add_line(msg))
    msg = '{:>6}'.format('CPU%')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('MEM')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('/MAX')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('IOR/s')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('IOW/s')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('Rx/s')
    ret.append(self.curse_add_line(msg))
    msg = '{:>7}'.format('Tx/s')
    ret.append(self.curse_add_line(msg))
    msg = '    {:8}'.format('Command')
    ret.append(self.curse_add_line(msg))
    for container in self.stats['containers']:
        ret.append(self.curse_new_line())
        name = container['name']
        if (len(name) > name_max_width):
            name = ('_' + name[((- name_max_width) + 1):])
        else:
            name = name[:name_max_width]
        msg = '    {:{width}}'.format(name, width=name_max_width)
        ret.append(self.curse_add_line(msg))
        status = self.container_alert(container['Status'])
        msg = container['Status'].replace('minute', 'min')
        msg = '{:>26}'.format(msg[0:25])
        ret.append(self.curse_add_line(msg, status))
        try:
            msg = '{:>6.1f}'.format(container['cpu']['total'])
        except KeyError:
            msg = '{:>6}'.format('?')
        ret.append(self.curse_add_line(msg, self.get_views(item=container['name'], key='cpu', option='decoration')))
        try:
            msg = '{:>7}'.format(self.auto_unit(container['memory']['usage']))
        except KeyError:
            msg = '{:>7}'.format('?')
        ret.append(self.curse_add_line(msg, self.get_views(item=container['name'], key='mem', option='decoration')))
        try:
            msg = '{:>7}'.format(self.auto_unit(container['memory']['limit']))
        except KeyError:
            msg = '{:>7}'.format('?')
        ret.append(self.curse_add_line(msg))
        for r in ['ior', 'iow']:
            try:
                value = (self.auto_unit(int(((container['io'][r] // container['io']['time_since_update']) * 8))) + 'b')
                msg = '{:>7}'.format(value)
            except KeyError:
                msg = '{:>7}'.format('?')
            ret.append(self.curse_add_line(msg))
        if args.byte:
            to_bit = 1
            unit = ''
        else:
            to_bit = 8
            unit = 'b'
        for r in ['rx', 'tx']:
            try:
                value = (self.auto_unit(int(((container['network'][r] // container['network']['time_since_update']) * to_bit))) + unit)
                msg = '{:>7}'.format(value)
            except KeyError:
                msg = '{:>7}'.format('?')
            ret.append(self.curse_add_line(msg))
        msg = '    {}'.format(container['Command'])
        ret.append(self.curse_add_line(msg, splittable=True))
    return ret
