code: def _tokenize(self, comps):
          
          ps = []
          for comp in comps:
              ps.extend([c.strip(' ,') for c in re.split(r'\s+(?=[^{}]*(?:\{|$))', comp)])
          return [p for p in ps if p]
docs: Split name on spaces, unless inside curly brackets or quotes.