# 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 google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from tast.cros.services.cros.policy import policy_pb2 as tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__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 tast/cros/services/cros/policy/policy_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 PolicyServiceStub(object):
    """Policy provides functions to perform enrollment.
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.VerifyPolicyStatus = channel.unary_unary(
                '/tast.cros.policy.PolicyService/VerifyPolicyStatus',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyPolicyStatusRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.StartNewChromeReader = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StartNewChromeReader',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.WaitForEnrollmentError = channel.unary_unary(
                '/tast.cros.policy.PolicyService/WaitForEnrollmentError',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.ZeroTouchEnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/ZeroTouchEnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ZeroTouchEnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.AutoReEnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/AutoReEnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.AutoReEnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.TokenBasedEnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/TokenBasedEnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.TokenBasedEnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.EnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/EnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.GAIAEnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/GAIAEnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.GAIAEnrollAndLoginUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/GAIAEnrollAndLoginUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollAndLoginUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.GAIAEnrollForReporting = channel.unary_unary(
                '/tast.cros.policy.PolicyService/GAIAEnrollForReporting',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollForReportingRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.GAIALoginForReporting = channel.unary_unary(
                '/tast.cros.policy.PolicyService/GAIALoginForReporting',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIALoginForReportingRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.SAMLTestIdPEnrollUsingChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/SAMLTestIdPEnrollUsingChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SAMLTestIdPEnrollUsingChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.UpdatePolicies = channel.unary_unary(
                '/tast.cros.policy.PolicyService/UpdatePolicies',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UpdatePoliciesRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.CheckChromeAndFakeDMS = channel.unary_unary(
                '/tast.cros.policy.PolicyService/CheckChromeAndFakeDMS',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.StopChromeAndFakeDMS = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StopChromeAndFakeDMS',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.StartChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StartChrome',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StartChromeRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.StopChrome = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StopChrome',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.ContinueLogin = channel.unary_unary(
                '/tast.cros.policy.PolicyService/ContinueLogin',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.CreateFakeDMSDir = channel.unary_unary(
                '/tast.cros.policy.PolicyService/CreateFakeDMSDir',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateFakeDMSDirRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.CreateTempFakeDMSDir = channel.unary_unary(
                '/tast.cros.policy.PolicyService/CreateTempFakeDMSDir',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirRequest.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirResponse.FromString,
                _registered_method=True)
        self.RemoveFakeDMSDir = channel.unary_unary(
                '/tast.cros.policy.PolicyService/RemoveFakeDMSDir',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.RemoveFakeDMSDirRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.StartExternalDataServer = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StartExternalDataServer',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.ServePolicyData = channel.unary_unary(
                '/tast.cros.policy.PolicyService/ServePolicyData',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataRequest.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataResponse.FromString,
                _registered_method=True)
        self.StopExternalDataServer = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StopExternalDataServer',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.EvalStatementInExtension = channel.unary_unary(
                '/tast.cros.policy.PolicyService/EvalStatementInExtension',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.EvalInExtension = channel.unary_unary(
                '/tast.cros.policy.PolicyService/EvalInExtension',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionResponse.FromString,
                _registered_method=True)
        self.VerifyVisibleNotification = channel.unary_unary(
                '/tast.cros.policy.PolicyService/VerifyVisibleNotification',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyVisibleNotificationRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.EvalExpressionInChromeURL = channel.unary_unary(
                '/tast.cros.policy.PolicyService/EvalExpressionInChromeURL',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalExpressionInChromeUrlRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.ClientID = channel.unary_unary(
                '/tast.cros.policy.PolicyService/ClientID',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ClientIdResponse.FromString,
                _registered_method=True)
        self.DirectoryAPIID = channel.unary_unary(
                '/tast.cros.policy.PolicyService/DirectoryAPIID',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DirectoryAPIIDResponse.FromString,
                _registered_method=True)
        self.DeviceAndCustomerID = channel.unary_unary(
                '/tast.cros.policy.PolicyService/DeviceAndCustomerID',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DeviceAndCustomerIDResponse.FromString,
                _registered_method=True)
        self.StableDeviceSecret = channel.unary_unary(
                '/tast.cros.policy.PolicyService/StableDeviceSecret',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StableDeviceSecretResponse.FromString,
                _registered_method=True)
        self.LockDevice = channel.unary_unary(
                '/tast.cros.policy.PolicyService/LockDevice',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.UnlockDeviceWithPassword = channel.unary_unary(
                '/tast.cros.policy.PolicyService/UnlockDeviceWithPassword',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UnlockDeviceWithPasswordRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.Logout = channel.unary_unary(
                '/tast.cros.policy.PolicyService/Logout',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.SendRemoteCommand = channel.unary_unary(
                '/tast.cros.policy.PolicyService/SendRemoteCommand',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandRequest.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandResponse.FromString,
                _registered_method=True)
        self.WaitRemoteCommandResult = channel.unary_unary(
                '/tast.cros.policy.PolicyService/WaitRemoteCommandResult',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultRequest.SerializeToString,
                response_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultResponse.FromString,
                _registered_method=True)
        self.WaitRemoteCommandAcked = channel.unary_unary(
                '/tast.cros.policy.PolicyService/WaitRemoteCommandAcked',
                request_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandAckedRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.RefreshRemoteCommands = channel.unary_unary(
                '/tast.cros.policy.PolicyService/RefreshRemoteCommands',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.FindAndClickRestartNowButton = channel.unary_unary(
                '/tast.cros.policy.PolicyService/FindAndClickRestartNowButton',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)


class PolicyServiceServicer(object):
    """Policy provides functions to perform enrollment.
    """

    def VerifyPolicyStatus(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 StartNewChromeReader(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 WaitForEnrollmentError(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 ZeroTouchEnrollUsingChrome(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 AutoReEnrollUsingChrome(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 TokenBasedEnrollUsingChrome(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 EnrollUsingChrome(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 GAIAEnrollUsingChrome(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 GAIAEnrollAndLoginUsingChrome(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 GAIAEnrollForReporting(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 GAIALoginForReporting(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 SAMLTestIdPEnrollUsingChrome(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 UpdatePolicies(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 CheckChromeAndFakeDMS(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 StopChromeAndFakeDMS(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 StartChrome(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 StopChrome(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 ContinueLogin(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 CreateFakeDMSDir(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 CreateTempFakeDMSDir(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 RemoveFakeDMSDir(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 StartExternalDataServer(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 ServePolicyData(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 StopExternalDataServer(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 EvalStatementInExtension(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 EvalInExtension(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 VerifyVisibleNotification(self, request, context):
        """Verifies that the notification corresponding to the id in the request is
        visible.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def EvalExpressionInChromeURL(self, request, context):
        """Creates a new connection to the Chrome URL in the request and evaluates the
        expression in the request on it.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ClientID(self, request, context):
        """Grabs Client ID for the session.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DirectoryAPIID(self, request, context):
        """Grabs DirectoryAPIID of the managed session.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeviceAndCustomerID(self, request, context):
        """Grabs DirectoryAPIID and ObfuscatedCustomerID of the managed session.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StableDeviceSecret(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 LockDevice(self, request, context):
        """Locks the device.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UnlockDeviceWithPassword(self, request, context):
        """Unlock the device with password.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Logout(self, request, context):
        """Log outs of the user session.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendRemoteCommand(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 WaitRemoteCommandResult(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 WaitRemoteCommandAcked(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 RefreshRemoteCommands(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 FindAndClickRestartNowButton(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_PolicyServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'VerifyPolicyStatus': grpc.unary_unary_rpc_method_handler(
                    servicer.VerifyPolicyStatus,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyPolicyStatusRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StartNewChromeReader': grpc.unary_unary_rpc_method_handler(
                    servicer.StartNewChromeReader,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'WaitForEnrollmentError': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitForEnrollmentError,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ZeroTouchEnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.ZeroTouchEnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ZeroTouchEnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'AutoReEnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.AutoReEnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.AutoReEnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'TokenBasedEnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.TokenBasedEnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.TokenBasedEnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.EnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GAIAEnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.GAIAEnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GAIAEnrollAndLoginUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.GAIAEnrollAndLoginUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollAndLoginUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GAIAEnrollForReporting': grpc.unary_unary_rpc_method_handler(
                    servicer.GAIAEnrollForReporting,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollForReportingRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GAIALoginForReporting': grpc.unary_unary_rpc_method_handler(
                    servicer.GAIALoginForReporting,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIALoginForReportingRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'SAMLTestIdPEnrollUsingChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.SAMLTestIdPEnrollUsingChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SAMLTestIdPEnrollUsingChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdatePolicies': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdatePolicies,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UpdatePoliciesRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'CheckChromeAndFakeDMS': grpc.unary_unary_rpc_method_handler(
                    servicer.CheckChromeAndFakeDMS,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StopChromeAndFakeDMS': grpc.unary_unary_rpc_method_handler(
                    servicer.StopChromeAndFakeDMS,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StartChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.StartChrome,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StartChromeRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StopChrome': grpc.unary_unary_rpc_method_handler(
                    servicer.StopChrome,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ContinueLogin': grpc.unary_unary_rpc_method_handler(
                    servicer.ContinueLogin,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'CreateFakeDMSDir': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateFakeDMSDir,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateFakeDMSDirRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'CreateTempFakeDMSDir': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateTempFakeDMSDir,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirRequest.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirResponse.SerializeToString,
            ),
            'RemoveFakeDMSDir': grpc.unary_unary_rpc_method_handler(
                    servicer.RemoveFakeDMSDir,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.RemoveFakeDMSDirRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'StartExternalDataServer': grpc.unary_unary_rpc_method_handler(
                    servicer.StartExternalDataServer,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ServePolicyData': grpc.unary_unary_rpc_method_handler(
                    servicer.ServePolicyData,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataRequest.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataResponse.SerializeToString,
            ),
            'StopExternalDataServer': grpc.unary_unary_rpc_method_handler(
                    servicer.StopExternalDataServer,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EvalStatementInExtension': grpc.unary_unary_rpc_method_handler(
                    servicer.EvalStatementInExtension,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EvalInExtension': grpc.unary_unary_rpc_method_handler(
                    servicer.EvalInExtension,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionResponse.SerializeToString,
            ),
            'VerifyVisibleNotification': grpc.unary_unary_rpc_method_handler(
                    servicer.VerifyVisibleNotification,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyVisibleNotificationRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'EvalExpressionInChromeURL': grpc.unary_unary_rpc_method_handler(
                    servicer.EvalExpressionInChromeURL,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalExpressionInChromeUrlRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ClientID': grpc.unary_unary_rpc_method_handler(
                    servicer.ClientID,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ClientIdResponse.SerializeToString,
            ),
            'DirectoryAPIID': grpc.unary_unary_rpc_method_handler(
                    servicer.DirectoryAPIID,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DirectoryAPIIDResponse.SerializeToString,
            ),
            'DeviceAndCustomerID': grpc.unary_unary_rpc_method_handler(
                    servicer.DeviceAndCustomerID,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DeviceAndCustomerIDResponse.SerializeToString,
            ),
            'StableDeviceSecret': grpc.unary_unary_rpc_method_handler(
                    servicer.StableDeviceSecret,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StableDeviceSecretResponse.SerializeToString,
            ),
            'LockDevice': grpc.unary_unary_rpc_method_handler(
                    servicer.LockDevice,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UnlockDeviceWithPassword': grpc.unary_unary_rpc_method_handler(
                    servicer.UnlockDeviceWithPassword,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UnlockDeviceWithPasswordRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'Logout': grpc.unary_unary_rpc_method_handler(
                    servicer.Logout,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'SendRemoteCommand': grpc.unary_unary_rpc_method_handler(
                    servicer.SendRemoteCommand,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandRequest.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandResponse.SerializeToString,
            ),
            'WaitRemoteCommandResult': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitRemoteCommandResult,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultRequest.FromString,
                    response_serializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultResponse.SerializeToString,
            ),
            'WaitRemoteCommandAcked': grpc.unary_unary_rpc_method_handler(
                    servicer.WaitRemoteCommandAcked,
                    request_deserializer=tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandAckedRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'RefreshRemoteCommands': grpc.unary_unary_rpc_method_handler(
                    servicer.RefreshRemoteCommands,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'FindAndClickRestartNowButton': grpc.unary_unary_rpc_method_handler(
                    servicer.FindAndClickRestartNowButton,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'tast.cros.policy.PolicyService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('tast.cros.policy.PolicyService', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class PolicyService(object):
    """Policy provides functions to perform enrollment.
    """

    @staticmethod
    def VerifyPolicyStatus(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,
            '/tast.cros.policy.PolicyService/VerifyPolicyStatus',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyPolicyStatusRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StartNewChromeReader(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,
            '/tast.cros.policy.PolicyService/StartNewChromeReader',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def WaitForEnrollmentError(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,
            '/tast.cros.policy.PolicyService/WaitForEnrollmentError',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ZeroTouchEnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/ZeroTouchEnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ZeroTouchEnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def AutoReEnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/AutoReEnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.AutoReEnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def TokenBasedEnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/TokenBasedEnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.TokenBasedEnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/EnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GAIAEnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/GAIAEnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GAIAEnrollAndLoginUsingChrome(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,
            '/tast.cros.policy.PolicyService/GAIAEnrollAndLoginUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollAndLoginUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GAIAEnrollForReporting(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,
            '/tast.cros.policy.PolicyService/GAIAEnrollForReporting',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIAEnrollForReportingRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def GAIALoginForReporting(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,
            '/tast.cros.policy.PolicyService/GAIALoginForReporting',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.GAIALoginForReportingRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SAMLTestIdPEnrollUsingChrome(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,
            '/tast.cros.policy.PolicyService/SAMLTestIdPEnrollUsingChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SAMLTestIdPEnrollUsingChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def UpdatePolicies(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,
            '/tast.cros.policy.PolicyService/UpdatePolicies',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UpdatePoliciesRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CheckChromeAndFakeDMS(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,
            '/tast.cros.policy.PolicyService/CheckChromeAndFakeDMS',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StopChromeAndFakeDMS(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,
            '/tast.cros.policy.PolicyService/StopChromeAndFakeDMS',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StartChrome(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,
            '/tast.cros.policy.PolicyService/StartChrome',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StartChromeRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StopChrome(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,
            '/tast.cros.policy.PolicyService/StopChrome',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ContinueLogin(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,
            '/tast.cros.policy.PolicyService/ContinueLogin',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateFakeDMSDir(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,
            '/tast.cros.policy.PolicyService/CreateFakeDMSDir',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateFakeDMSDirRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CreateTempFakeDMSDir(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,
            '/tast.cros.policy.PolicyService/CreateTempFakeDMSDir',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirRequest.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.CreateTempFakeDMSDirResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def RemoveFakeDMSDir(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,
            '/tast.cros.policy.PolicyService/RemoveFakeDMSDir',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.RemoveFakeDMSDirRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StartExternalDataServer(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,
            '/tast.cros.policy.PolicyService/StartExternalDataServer',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ServePolicyData(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,
            '/tast.cros.policy.PolicyService/ServePolicyData',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataRequest.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ServePolicyDataResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StopExternalDataServer(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,
            '/tast.cros.policy.PolicyService/StopExternalDataServer',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EvalStatementInExtension(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,
            '/tast.cros.policy.PolicyService/EvalStatementInExtension',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EvalInExtension(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,
            '/tast.cros.policy.PolicyService/EvalInExtension',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionRequest.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalInExtensionResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def VerifyVisibleNotification(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,
            '/tast.cros.policy.PolicyService/VerifyVisibleNotification',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.VerifyVisibleNotificationRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def EvalExpressionInChromeURL(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,
            '/tast.cros.policy.PolicyService/EvalExpressionInChromeURL',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.EvalExpressionInChromeUrlRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ClientID(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,
            '/tast.cros.policy.PolicyService/ClientID',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.ClientIdResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DirectoryAPIID(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,
            '/tast.cros.policy.PolicyService/DirectoryAPIID',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DirectoryAPIIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DeviceAndCustomerID(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,
            '/tast.cros.policy.PolicyService/DeviceAndCustomerID',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.DeviceAndCustomerIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def StableDeviceSecret(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,
            '/tast.cros.policy.PolicyService/StableDeviceSecret',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.StableDeviceSecretResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def LockDevice(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,
            '/tast.cros.policy.PolicyService/LockDevice',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def UnlockDeviceWithPassword(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,
            '/tast.cros.policy.PolicyService/UnlockDeviceWithPassword',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.UnlockDeviceWithPasswordRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def Logout(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,
            '/tast.cros.policy.PolicyService/Logout',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SendRemoteCommand(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,
            '/tast.cros.policy.PolicyService/SendRemoteCommand',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandRequest.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.SendRemoteCommandResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def WaitRemoteCommandResult(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,
            '/tast.cros.policy.PolicyService/WaitRemoteCommandResult',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultRequest.SerializeToString,
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandResultResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def WaitRemoteCommandAcked(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,
            '/tast.cros.policy.PolicyService/WaitRemoteCommandAcked',
            tast_dot_cros_dot_services_dot_cros_dot_policy_dot_policy__pb2.WaitRemoteCommandAckedRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def RefreshRemoteCommands(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,
            '/tast.cros.policy.PolicyService/RefreshRemoteCommands',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def FindAndClickRestartNowButton(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,
            '/tast.cros.policy.PolicyService/FindAndClickRestartNowButton',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
