<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def no(self, text, count=None):
 """ If count is 0, no, zero or nil, return 'no' followed by the plural of text. If count is one of: 1, a, an, one, each, every, this, that return count followed by text. Otherwise return count follow by the plural of text. In the return value count is always followed by a space. Whitespace at the start and end is preserved. """

        if count is None and self.persistent_count is not None:
            count = self.persistent_count

        if count is None:
            count = 0
        mo = re.search(r"\A(\s*)(.+?)(\s*)\Z", text)
        pre = mo.group(1)
        word = mo.group(2)
        post = mo.group(3)

        if str(count).lower() in pl_count_zero:
            return "{}no {}{}".format(pre, self.plural(word, 0), post)
        else:
            return "{}{} {}{}".format(pre, count, self.plural(word, count), post)