code: func ChainFilters(endorser peer.EndorserServer, filters ...Filter) peer.EndorserServer {
  	if len(filters) == 0 {
  		return endorser
  	}
  
  	// Each filter forwards to the next
  	for i := 0; i < len(filters)-1; i++ {
  		filters[i].Init(filters[i+1])
  	}
  
  	// Last filter forwards to the endorser
  	filters[len(filters)-1].Init(endorser)
  
  	return filters[0]
  }
docs: // ChainFilters chains the given auth filters in the order provided.
  // the last filter always forwards to the endorser