text: # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
  """Client and server classes corresponding to protobuf-defined services."""
  import grpc
  
  import psi_service_pb2 as psi__service__pb2
  
  
  class PSIServiceStub(object):
      """Missing associated documentation comment in .proto file."""
  
      def __init__(self, channel):
          """Constructor.
  
          Args:
              channel: A grpc.Channel.
          """
          self.getSalt = channel.unary_unary(
                  '/PSIService/getSalt',
                  request_serializer=psi__service__pb2.SaltRequest.SerializeToString,
                  response_deserializer=psi__service__pb2.SaltReply.FromString,
                  )
          self.uploadSet = channel.unary_unary(
                  '/PSIService/uploadSet',
                  request_serializer=psi__service__pb2.UploadSetRequest.SerializeToString,
                  response_deserializer=psi__service__pb2.UploadSetResponse.FromString,
                  )
          self.downloadIntersection = channel.unary_unary(
                  '/PSIService/downloadIntersection',
                  request_serializer=psi__service__pb2.DownloadIntersectionRequest.SerializeToString,
                  response_deserializer=psi__service__pb2.DownloadIntersectionResponse.FromString,
                  )
  
  
  class PSIServiceServicer(object):
      """Missing associated documentation comment in .proto file."""
  
      def getSalt(self, request, context):
          """Gives SHA256 Hash salt
          """
          context.set_code(grpc.StatusCode.UNIMPLEMENTED)
          context.set_details('Method not implemented!')
          raise NotImplementedError('Method not implemented!')
  
      def uploadSet(self, request, context):
          """Missing associated documentation comment in .proto file."""
          context.set_code(grpc.StatusCode.UNIMPLEMENTED)
          context.set_details('Method not implemented!')
          raise NotImplementedError('Method not implemented!')
  
      def downloadIntersection(self, request, context):
          """Missing associated documentation comment in .proto file."""
          context.set_code(grpc.StatusCode.UNIMPLEMENTED)
          context.set_details('Method not implemented!')
          raise NotImplementedError('Method not implemented!')
  
  
  def add_PSIServiceServicer_to_server(servicer, server):
      rpc_method_handlers = {
              'getSalt': grpc.unary_unary_rpc_method_handler(
                      servicer.getSalt,
                      request_deserializer=psi__service__pb2.SaltRequest.FromString,
                      response_serializer=psi__service__pb2.SaltReply.SerializeToString,
              ),
              'uploadSet': grpc.unary_unary_rpc_method_handler(
                      servicer.uploadSet,
                      request_deserializer=psi__service__pb2.UploadSetRequest.FromString,
                      response_serializer=psi__service__pb2.UploadSetResponse.SerializeToString,
              ),
              'downloadIntersection': grpc.unary_unary_rpc_method_handler(
                      servicer.downloadIntersection,
                      request_deserializer=psi__service__pb2.DownloadIntersectionRequest.FromString,
                      response_serializer=psi__service__pb2.DownloadIntersectionResponse.SerializeToString,
              ),
      }
      generic_handler = grpc.method_handlers_generic_handler(
              'PSIService', rpc_method_handlers)
      server.add_generic_rpc_handlers((generic_handler,))
  
  
   # This class is part of an EXPERIMENTAL API.
  class PSIService(object):
      """Missing associated documentation comment in .proto file."""
  
      @staticmethod
      def getSalt(request,
              target,
              options=(),
              channel_credentials=None,
              call_credentials=None,
              insecure=False,
              compression=None,
              wait_for_ready=None,
              timeout=None,
              metadata=None):
          return grpc.experimental.unary_unary(request, target, '/PSIService/getSalt',
              psi__service__pb2.SaltRequest.SerializeToString,
              psi__service__pb2.SaltReply.FromString,
              options, channel_credentials,
              insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  
      @staticmethod
      def uploadSet(request,
              target,
              options=(),
              channel_credentials=None,
              call_credentials=None,
              insecure=False,
              compression=None,
              wait_for_ready=None,
              timeout=None,
              metadata=None):
          return grpc.experimental.unary_unary(request, target, '/PSIService/uploadSet',
              psi__service__pb2.UploadSetRequest.SerializeToString,
              psi__service__pb2.UploadSetResponse.FromString,
              options, channel_credentials,
              insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  
      @staticmethod
      def downloadIntersection(request,
              target,
              options=(),
              channel_credentials=None,
              call_credentials=None,
              insecure=False,
              compression=None,
              wait_for_ready=None,
              timeout=None,
              metadata=None):
          return grpc.experimental.unary_unary(request, target, '/PSIService/downloadIntersection',
              psi__service__pb2.DownloadIntersectionRequest.SerializeToString,
              psi__service__pb2.DownloadIntersectionResponse.FromString,
              options, channel_credentials,
              insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
  