code: func UnaryServerInterceptor() grpc.UnaryServerInterceptor {
  	return func(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler) (interface{}, error) {
  		if v, ok := req.(validator); ok {
  			if err := v.Validate(); err != nil {
  				return nil, grpc.Errorf(codes.InvalidArgument, err.Error())
  			}
  		}
  		return handler(ctx, req)
  	}
  }
docs: // UnaryServerInterceptor returns a new unary server interceptor that validates incoming messages.
  //
  // Invalid messages will be rejected with `InvalidArgument` before reaching any userspace handlers.