def _p_string_nstring_pairs(self):
        key = self._p_string()
        self._p_simple_string(' ', syntax_error = "expected a space between " \
                              "strings in a parenthesized key/value list")
        # What is next may be 'nil' which turns in to None in python
        # or a string.
        #
        if self._p_simple_string('nil', silent = True):
            return (key, None)
        return (key, self._p_string())

    #######################################################################
    #
we expect a STRING " " (NIL | STRING) pair.
dataset/ETHPy150Open scanner/asimap/asimap/parse.py/IMAPClientCommand._p_string_nstring_pairs