# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc
import warnings

from . import admin_pb2 as admin__pb2
from . import exchange_pb2 as exchange__pb2

GRPC_GENERATED_VERSION = '1.71.0'
GRPC_VERSION = grpc.__version__
_version_not_supported = False

try:
    from grpc._utilities import first_version_is_lower
    _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
except ImportError:
    _version_not_supported = True

if _version_not_supported:
    raise RuntimeError(
        f'The grpc package installed is at version {GRPC_VERSION},'
        + f' but the generated code in admin_pb2_grpc.py depends on'
        + f' grpcio>={GRPC_GENERATED_VERSION}.'
        + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
        + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
    )


class AdminServiceStub(object):
    """Missing associated documentation comment in .proto file."""

    def __init__(self, channel):
        """Constructor.

        Args:
            channel: A grpc.Channel.
        """
        self.AddAccountTypeToPartition = channel.unary_unary(
                '/admin.AdminService/AddAccountTypeToPartition',
                request_serializer=admin__pb2.AddAccountTypeToPartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.EndPartition = channel.unary_unary(
                '/admin.AdminService/EndPartition',
                request_serializer=admin__pb2.EndPartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.PausePartition = channel.unary_unary(
                '/admin.AdminService/PausePartition',
                request_serializer=admin__pb2.PausePartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.StartPartition = channel.unary_unary(
                '/admin.AdminService/StartPartition',
                request_serializer=admin__pb2.StartPartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SettlePartition = channel.unary_unary(
                '/admin.AdminService/SettlePartition',
                request_serializer=admin__pb2.SettlePartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.OpenExchange = channel.unary_unary(
                '/admin.AdminService/OpenExchange',
                request_serializer=admin__pb2.OpenExchangeRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.CloseExchange = channel.unary_unary(
                '/admin.AdminService/CloseExchange',
                request_serializer=admin__pb2.CloseExchangeRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.AddSymbol = channel.unary_unary(
                '/admin.AdminService/AddSymbol',
                request_serializer=admin__pb2.AddSymbolRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SetPosition = channel.unary_unary(
                '/admin.AdminService/SetPosition',
                request_serializer=admin__pb2.SetPositionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.AdjustPosition = channel.unary_unary(
                '/admin.AdminService/AdjustPosition',
                request_serializer=admin__pb2.AdjustPositionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SetAccountFee = channel.unary_unary(
                '/admin.AdminService/SetAccountFee',
                request_serializer=admin__pb2.SetAccountFeeRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SetEnableFee = channel.unary_unary(
                '/admin.AdminService/SetEnableFee',
                request_serializer=admin__pb2.SetEnableFeeRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SetPositionLimits = channel.unary_unary(
                '/admin.AdminService/SetPositionLimits',
                request_serializer=admin__pb2.SetPositionLimitsRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.RegisterNamedAccount = channel.unary_unary(
                '/admin.AdminService/RegisterNamedAccount',
                request_serializer=admin__pb2.RegisterNamedAccountRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.RegisterBotAccount = channel.unary_unary(
                '/admin.AdminService/RegisterBotAccount',
                request_serializer=admin__pb2.RegisterBotAccountRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.AddPartition = channel.unary_unary(
                '/admin.AdminService/AddPartition',
                request_serializer=admin__pb2.AddPartitionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SendPrivateMessage = channel.unary_unary(
                '/admin.AdminService/SendPrivateMessage',
                request_serializer=admin__pb2.SendPrivateMessageRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.SendPublicMessage = channel.unary_unary(
                '/admin.AdminService/SendPublicMessage',
                request_serializer=admin__pb2.SendPublicMessageRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.GetPosition = channel.unary_unary(
                '/admin.AdminService/GetPosition',
                request_serializer=admin__pb2.GetPositionRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.UpsertUser = channel.unary_unary(
                '/admin.AdminService/UpsertUser',
                request_serializer=admin__pb2.UpsertUserRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.AddUserToAccount = channel.unary_unary(
                '/admin.AdminService/AddUserToAccount',
                request_serializer=admin__pb2.AddUserToAccountRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.ClearUserAccounts = channel.unary_unary(
                '/admin.AdminService/ClearUserAccounts',
                request_serializer=admin__pb2.ClearUserAccountsRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)
        self.DeleteUserFromAccount = channel.unary_unary(
                '/admin.AdminService/DeleteUserFromAccount',
                request_serializer=admin__pb2.DeleteUserFromAccountRequest.SerializeToString,
                response_deserializer=exchange__pb2.GenericResponse.FromString,
                _registered_method=True)


class AdminServiceServicer(object):
    """Missing associated documentation comment in .proto file."""

    def AddAccountTypeToPartition(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 EndPartition(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 PausePartition(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 StartPartition(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 SettlePartition(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 OpenExchange(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 CloseExchange(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 AddSymbol(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 SetPosition(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 AdjustPosition(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 SetAccountFee(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 SetEnableFee(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 SetPositionLimits(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 RegisterNamedAccount(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 RegisterBotAccount(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 AddPartition(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 SendPrivateMessage(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 SendPublicMessage(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 GetPosition(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 UpsertUser(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 AddUserToAccount(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 ClearUserAccounts(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 DeleteUserFromAccount(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_AdminServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'AddAccountTypeToPartition': grpc.unary_unary_rpc_method_handler(
                    servicer.AddAccountTypeToPartition,
                    request_deserializer=admin__pb2.AddAccountTypeToPartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'EndPartition': grpc.unary_unary_rpc_method_handler(
                    servicer.EndPartition,
                    request_deserializer=admin__pb2.EndPartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'PausePartition': grpc.unary_unary_rpc_method_handler(
                    servicer.PausePartition,
                    request_deserializer=admin__pb2.PausePartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'StartPartition': grpc.unary_unary_rpc_method_handler(
                    servicer.StartPartition,
                    request_deserializer=admin__pb2.StartPartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SettlePartition': grpc.unary_unary_rpc_method_handler(
                    servicer.SettlePartition,
                    request_deserializer=admin__pb2.SettlePartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'OpenExchange': grpc.unary_unary_rpc_method_handler(
                    servicer.OpenExchange,
                    request_deserializer=admin__pb2.OpenExchangeRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'CloseExchange': grpc.unary_unary_rpc_method_handler(
                    servicer.CloseExchange,
                    request_deserializer=admin__pb2.CloseExchangeRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'AddSymbol': grpc.unary_unary_rpc_method_handler(
                    servicer.AddSymbol,
                    request_deserializer=admin__pb2.AddSymbolRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SetPosition': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPosition,
                    request_deserializer=admin__pb2.SetPositionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'AdjustPosition': grpc.unary_unary_rpc_method_handler(
                    servicer.AdjustPosition,
                    request_deserializer=admin__pb2.AdjustPositionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SetAccountFee': grpc.unary_unary_rpc_method_handler(
                    servicer.SetAccountFee,
                    request_deserializer=admin__pb2.SetAccountFeeRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SetEnableFee': grpc.unary_unary_rpc_method_handler(
                    servicer.SetEnableFee,
                    request_deserializer=admin__pb2.SetEnableFeeRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SetPositionLimits': grpc.unary_unary_rpc_method_handler(
                    servicer.SetPositionLimits,
                    request_deserializer=admin__pb2.SetPositionLimitsRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'RegisterNamedAccount': grpc.unary_unary_rpc_method_handler(
                    servicer.RegisterNamedAccount,
                    request_deserializer=admin__pb2.RegisterNamedAccountRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'RegisterBotAccount': grpc.unary_unary_rpc_method_handler(
                    servicer.RegisterBotAccount,
                    request_deserializer=admin__pb2.RegisterBotAccountRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'AddPartition': grpc.unary_unary_rpc_method_handler(
                    servicer.AddPartition,
                    request_deserializer=admin__pb2.AddPartitionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SendPrivateMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.SendPrivateMessage,
                    request_deserializer=admin__pb2.SendPrivateMessageRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'SendPublicMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.SendPublicMessage,
                    request_deserializer=admin__pb2.SendPublicMessageRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'GetPosition': grpc.unary_unary_rpc_method_handler(
                    servicer.GetPosition,
                    request_deserializer=admin__pb2.GetPositionRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'UpsertUser': grpc.unary_unary_rpc_method_handler(
                    servicer.UpsertUser,
                    request_deserializer=admin__pb2.UpsertUserRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'AddUserToAccount': grpc.unary_unary_rpc_method_handler(
                    servicer.AddUserToAccount,
                    request_deserializer=admin__pb2.AddUserToAccountRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'ClearUserAccounts': grpc.unary_unary_rpc_method_handler(
                    servicer.ClearUserAccounts,
                    request_deserializer=admin__pb2.ClearUserAccountsRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
            'DeleteUserFromAccount': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteUserFromAccount,
                    request_deserializer=admin__pb2.DeleteUserFromAccountRequest.FromString,
                    response_serializer=exchange__pb2.GenericResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'admin.AdminService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('admin.AdminService', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class AdminService(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def AddAccountTypeToPartition(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,
            '/admin.AdminService/AddAccountTypeToPartition',
            admin__pb2.AddAccountTypeToPartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EndPartition(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,
            '/admin.AdminService/EndPartition',
            admin__pb2.EndPartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def PausePartition(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,
            '/admin.AdminService/PausePartition',
            admin__pb2.PausePartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StartPartition(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,
            '/admin.AdminService/StartPartition',
            admin__pb2.StartPartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SettlePartition(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,
            '/admin.AdminService/SettlePartition',
            admin__pb2.SettlePartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def OpenExchange(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,
            '/admin.AdminService/OpenExchange',
            admin__pb2.OpenExchangeRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CloseExchange(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,
            '/admin.AdminService/CloseExchange',
            admin__pb2.CloseExchangeRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def AddSymbol(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,
            '/admin.AdminService/AddSymbol',
            admin__pb2.AddSymbolRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetPosition(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,
            '/admin.AdminService/SetPosition',
            admin__pb2.SetPositionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def AdjustPosition(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,
            '/admin.AdminService/AdjustPosition',
            admin__pb2.AdjustPositionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetAccountFee(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,
            '/admin.AdminService/SetAccountFee',
            admin__pb2.SetAccountFeeRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetEnableFee(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,
            '/admin.AdminService/SetEnableFee',
            admin__pb2.SetEnableFeeRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SetPositionLimits(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,
            '/admin.AdminService/SetPositionLimits',
            admin__pb2.SetPositionLimitsRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def RegisterNamedAccount(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,
            '/admin.AdminService/RegisterNamedAccount',
            admin__pb2.RegisterNamedAccountRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def RegisterBotAccount(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,
            '/admin.AdminService/RegisterBotAccount',
            admin__pb2.RegisterBotAccountRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def AddPartition(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,
            '/admin.AdminService/AddPartition',
            admin__pb2.AddPartitionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SendPrivateMessage(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,
            '/admin.AdminService/SendPrivateMessage',
            admin__pb2.SendPrivateMessageRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SendPublicMessage(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,
            '/admin.AdminService/SendPublicMessage',
            admin__pb2.SendPublicMessageRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GetPosition(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,
            '/admin.AdminService/GetPosition',
            admin__pb2.GetPositionRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def UpsertUser(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,
            '/admin.AdminService/UpsertUser',
            admin__pb2.UpsertUserRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def AddUserToAccount(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,
            '/admin.AdminService/AddUserToAccount',
            admin__pb2.AddUserToAccountRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ClearUserAccounts(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,
            '/admin.AdminService/ClearUserAccounts',
            admin__pb2.ClearUserAccountsRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeleteUserFromAccount(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,
            '/admin.AdminService/DeleteUserFromAccount',
            admin__pb2.DeleteUserFromAccountRequest.SerializeToString,
            exchange__pb2.GenericResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
