def get(self, index, n_cols=70):
        """
        Grab the `i`th object, with the title field formatted to fit
        inside of a window of width `n_cols`
        """

        if index < 0:
            raise IndexError

        while index >= len(self._content_data):
            try:
                with self._loader('Loading content'):
                    item = next(self._content_generator)
                if self._loader.exception:
                    raise IndexError
            except StopIteration:
                raise IndexError
            else:
                if isinstance(item, praw.objects.Message):
                    # Message chains can be treated like comment trees
                    for child_message in self.flatten_comments([item]):
                        data = self.strip_praw_message(child_message)
                        self._content_data.append(data)
                else:
                    # Comments also return children, but we don't display them
                    # in the Inbox page so they don't need to be parsed here.
                    data = self.strip_praw_message(item)
                    self._content_data.append(data)

        data = self._content_data[index]
        indent_level = min(data['level'], self.max_indent_level)
        data['h_offset'] = indent_level * self.indent_size
        width = n_cols - data['h_offset']
        data['split_body'] = self.wrap_text(data['body'], width=width)
        data['n_rows'] = len(data['split_body']) + 2

        return data

        Grab the `i`th object, with the title field formatted to fit
        inside of a window of width `n_cols`
        
rtv/content.py