code: func (e *Entry) MergePatterns(patterns []string) *Entry {
  	pat, size := PeekNextPattern(patterns)
  	if child := e.getChildEntry(pat); child != nil {
  		if len(patterns) == size {
  			return child
  		}
  		return child.MergePatterns(patterns[size:])
  	}
  	return e.addPatterns(patterns)
  }
docs: // MergePattern add entry patterns with given pattern strings. If a pattern
  // already exists on the entry, it adds remaining patterns to the existing entry.