human
Complete this python program:
def make_gallery_page(infos):
assistant
#Here is the Python program you requested.

    """return string of the rst (Restructured Text) of the gallery page,
    showing information on all screenshots found.
    """
    def a(s=''):
        '    append    formatted    s    to    output,    which    will    be    joined    into    lines    '
        output.append(s.format(**info))
    def t(left='', right=''):
        '    append    left    and    right    format    strings    into    a    table    line.    '
        l = left.format(**info)
        r = right.format(**info)
        if ((len(l) > width1) or (len(r) > width2)):
            Logger.error('items    to    wide    for    generated    table:    "%s"    and    "%s"', l, r)
            return
        output.append('|    {0:{w1}}    |    {1:{w2}}    |'.format(l, r, w1=width1, w2=width2))
    gallery_top = "\nGallery\n-------\n\n..    _Tutorials:        ../tutorials-index.html\n\n..    container::    title\n\n                This    gallery    lets    you    explore    the    many    examples    included    with    Kivy.\n                Click    on    any    screenshot    to    see    the    code.\n\nThis    gallery    contains:\n\n                *    Examples    from    the    examples/    directory    that    show    specific    capabilities    of\n                        different    libraries    and    features    of    Kivy.\n                *    Demonstrations    from    the    examples/demos/    directory    that    explore    many    of\n                        Kivy's    abilities.\n\nThere    are    more    Kivy    programs    elsewhere:\n\n                *    Tutorials_    walks    through    the    development    of    complete    Kivy    applications.\n                *    Unit    tests    found    in    the    source    code    under    the    subdirectory    kivy/tests/\n                        can    also    be    useful.\n\nWe    hope    your    journey    into    learning    Kivy    is    exciting    and    fun!\n\n"
    output = [gallery_top]
    for info in infos:
        a('\n..    |link{num}|        replace::    :doc:`{source}<gen__{dunder}>`')
        a('\n..    |pic{num}|    image::    ../images/examples/{dunder}.png\n                :width: ...