code: def zip_patterns(self, patterns):
          
          suffix = self.root.value
  
          if suffix is not None:
              # We are in a conditional tree.
              new_patterns = {}
              for key in patterns.keys():
                  new_patterns[tuple(sorted(list(key) + [suffix]))] = patterns[key]
  
              return new_patterns
  
          return patterns
docs: Append suffix to patterns in dictionary if
          we are in a conditional FP tree.