code: def _newline_tokenize(self, data):
          
          parts = data.split('\n')
          tokens = []
          for num, part in enumerate(parts):
              if part:
                  tokens.append((self.TOKEN_DATA, None, None, part))
              if num < (len(parts) - 1):
                  tokens.append((self.TOKEN_NEWLINE, None, None, '\n'))
          return tokens
docs: Given a string that does not contain any tags, this function will
          return a list of NEWLINE and DATA tokens such that if you concatenate
          their data, you will have the original string.