# 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 dnaerys_pb2 as dnaerys__pb2

GRPC_GENERATED_VERSION = '1.78.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},'
        + ' but the generated code in dnaerys_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 DnaerysServiceStub(object):
    """Missing associated documentation comment in .proto file."""

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

        Args:
            channel: A grpc.Channel.
        """
        self.Health = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/Health',
                request_serializer=dnaerys__pb2.HealthRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.HealthResponse.FromString,
                _registered_method=True)
        self.ClusterNodes = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/ClusterNodes',
                request_serializer=dnaerys__pb2.ClusterNodesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.ClusterNodesResponse.FromString,
                _registered_method=True)
        self.DatasetInfo = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/DatasetInfo',
                request_serializer=dnaerys__pb2.DatasetInfoRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.DatasetInfoResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInRegion = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegion',
                request_serializer=dnaerys__pb2.AllelesInRegionRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInRegion = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInRegion',
                request_serializer=dnaerys__pb2.CountAllelesInRegionRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInRegionInSamples = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegionInSamples',
                request_serializer=dnaerys__pb2.AllelesInRegionInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInRegionInSamples = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInRegionInSamples',
                request_serializer=dnaerys__pb2.CountAllelesInRegionInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInRegionInSamplesWithStats = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegionInSamplesWithStats',
                request_serializer=dnaerys__pb2.AllelesInRegionInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesWithStatsResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInBracket = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInBracket',
                request_serializer=dnaerys__pb2.AllelesInBracketRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInBracket = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInBracket',
                request_serializer=dnaerys__pb2.CountAllelesInBracketRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInBracketInSamples = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInBracketInSamples',
                request_serializer=dnaerys__pb2.AllelesInBracketInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInBracketInSamples = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInBracketInSamples',
                request_serializer=dnaerys__pb2.CountAllelesInBracketInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInMultiRegions = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegions',
                request_serializer=dnaerys__pb2.AllelesInMultiRegionsRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInMultiRegions = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInMultiRegions',
                request_serializer=dnaerys__pb2.CountAllelesInMultiRegionsRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInMultiRegionsWithStats = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsWithStats',
                request_serializer=dnaerys__pb2.AllelesInMultiRegionsRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesWithStatsResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInMultiRegionsInSamples = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsInSamples',
                request_serializer=dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.CountVariantsInMultiRegionsInSamples = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInMultiRegionsInSamples',
                request_serializer=dnaerys__pb2.CountAllelesInMultiRegionsInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountAllelesResponse.FromString,
                _registered_method=True)
        self.SelectVariantsInMultiRegionsInSamplesWithStats = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsInSamplesWithStats',
                request_serializer=dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesWithStatsResponse.FromString,
                _registered_method=True)
        self.TopNHWE = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/TopNHWE',
                request_serializer=dnaerys__pb2.TopNHWERequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesWithStatsResponse.FromString,
                _registered_method=True)
        self.TopNchi2 = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/TopNchi2',
                request_serializer=dnaerys__pb2.TopNchi2Request.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesWithStatsResponse.FromString,
                _registered_method=True)
        self.SelectSamplesInRegion = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesInRegion',
                request_serializer=dnaerys__pb2.SamplesInRegionRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.SamplesResponse.FromString,
                _registered_method=True)
        self.CountSamplesInRegion = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesInRegion',
                request_serializer=dnaerys__pb2.SamplesInRegionRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountSamplesResponse.FromString,
                _registered_method=True)
        self.SelectSamplesInMultiRegions = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesInMultiRegions',
                request_serializer=dnaerys__pb2.SamplesInMultiRegionsRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.SamplesResponse.FromString,
                _registered_method=True)
        self.CountSamplesInMultiRegions = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesInMultiRegions',
                request_serializer=dnaerys__pb2.SamplesInMultiRegionsRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountSamplesResponse.FromString,
                _registered_method=True)
        self.SelectSamplesHomReference = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesHomReference',
                request_serializer=dnaerys__pb2.SamplesHomRefRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.SamplesResponse.FromString,
                _registered_method=True)
        self.CountSamplesHomReference = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesHomReference',
                request_serializer=dnaerys__pb2.SamplesHomRefRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.CountSamplesResponse.FromString,
                _registered_method=True)
        self.SelectDeNovo = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectDeNovo',
                request_serializer=dnaerys__pb2.DeNovoRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.SelectHetDominant = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectHetDominant',
                request_serializer=dnaerys__pb2.HetDominantRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.SelectHomRecessive = channel.unary_stream(
                '/org.dnaerys.cluster.grpc.DnaerysService/SelectHomRecessive',
                request_serializer=dnaerys__pb2.HomRecessiveRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.AllelesResponse.FromString,
                _registered_method=True)
        self.Prs = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/Prs',
                request_serializer=dnaerys__pb2.PRSRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.PRSResponse.FromString,
                _registered_method=True)
        self.SexMismatchCheck = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/SexMismatchCheck',
                request_serializer=dnaerys__pb2.FstatXRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.SexMismatchResponse.FromString,
                _registered_method=True)
        self.FstatX = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/FstatX',
                request_serializer=dnaerys__pb2.FstatXRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.FstatXResponse.FromString,
                _registered_method=True)
        self.Kinship = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/Kinship',
                request_serializer=dnaerys__pb2.KinshipRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.KinshipResponse.FromString,
                _registered_method=True)
        self.KinshipDuo = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/KinshipDuo',
                request_serializer=dnaerys__pb2.KinshipDuoRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.KinshipResponse.FromString,
                _registered_method=True)
        self.KinshipTrio = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/KinshipTrio',
                request_serializer=dnaerys__pb2.KinshipTrioRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.KinshipResponse.FromString,
                _registered_method=True)
        self.SampleKinship = channel.unary_unary(
                '/org.dnaerys.cluster.grpc.DnaerysService/SampleKinship',
                request_serializer=dnaerys__pb2.SampleKinshipRequest.SerializeToString,
                response_deserializer=dnaerys__pb2.SampleKinshipResponse.FromString,
                _registered_method=True)


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

    def Health(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 ClusterNodes(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 DatasetInfo(self, request, context):
        """dataset info
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInRegion(self, request, context):
        """Variant selection

        selects variants in all samples in a single region
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInRegion(self, request, context):
        """counts variants in all samples in a single region based on selection criteria
        returns # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInRegionInSamples(self, request, context):
        """selects variants in provided samples in a single region
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInRegionInSamples(self, request, context):
        """counts variants in provided samples in a single region based on selection criteria
        returns # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInRegionInSamplesWithStats(self, request, context):
        """selects variants in provided samples in a single region
        returns stream of unique non-empty sets of unique variants with VC stats
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInBracket(self, request, context):
        """Bracket Queries
        selects variants in all samples in a single region
        with hard requirements for alleles start and end positions
        typical use case - SV
        see GA4GH Beacon Bracket Queries
        https://docs.genomebeacons.org/variant-queries/#beacon-bracket-queries
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInBracket(self, request, context):
        """Bracket Queries
        counts variants in all samples in a single region
        with hard requirements for alleles start and end positions
        typical use case - SV
        see GA4GH Beacon Bracket Queries
        https://docs.genomebeacons.org/variant-queries/#beacon-bracket-queries
        returns # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInBracketInSamples(self, request, context):
        """Bracket Queries
        selects variants in provided samples in a single region
        with hard requirements for alleles start and end positions
        typical use case - SV
        see GA4GH Beacon Bracket Queries
        https://docs.genomebeacons.org/variant-queries/#beacon-bracket-queries
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInBracketInSamples(self, request, context):
        """Bracket Queries
        counts variants in provided samples in a single region
        with hard requirements for alleles start and end positions
        typical use case - SV
        see GA4GH Beacon Bracket Queries
        https://docs.genomebeacons.org/variant-queries/#beacon-bracket-queries
        returns # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInMultiRegions(self, request, context):
        """selects variants in all samples in multiple regions
        regions can intersect or duplicate, returned variants are still unique and skip & limit are still obeyed
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInMultiRegions(self, request, context):
        """counts variants in all samples in multiple regions
        regions can intersect or duplicate
        returns # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInMultiRegionsWithStats(self, request, context):
        """selects variants in all samples in multiple regions
        regions can intersect or duplicate, returned variants are still unique and skip & limit are still obeyed
        returns stream of unique non-empty sets of unique variants with F-statistics
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInMultiRegionsInSamples(self, request, context):
        """selects variants in provided samples in multiple regions
        regions can intersect or duplicate, returned variants are still unique and skip & limit are still obeyed
        returns stream of unique non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountVariantsInMultiRegionsInSamples(self, request, context):
        """counts variants in provided samples in multiple regions
        regions can intersect or duplicate
        returns  # of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectVariantsInMultiRegionsInSamplesWithStats(self, request, context):
        """selects variants in provided samples in multiple regions
        regions can intersect or duplicate, returned variants are still unique and skip & limit are still obeyed
        returns stream of unique non-empty sets of unique variants with VC stats
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def TopNHWE(self, request, context):
        """selects top N variants with the most significant p-value for Chi-squared test for deviation from
        Hardy-Weinberg Equilibrium across all variants.
        Autosomal + X chromosome outside PAR and biallelic SNVs only.
        On X chromosome outside PAR calculated according to:
        "Testing for Hardy-Weinberg equilibrium at biallelic genetic markers on the X chromosome" J Graffelman, BS Weir
        https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4868269/
        selection order of variants with identical p-value is undefined
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def TopNchi2(self, request, context):
        """selects top N variants with the most significant p-value in Pearson's chi-squared test
        with provided samples as cases and the rest of cohort as controls
        selection order of variants with identical p-value is undefined
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectSamplesInRegion(self, request, context):
        """Sample selection

        selects samples with variants in a region
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountSamplesInRegion(self, request, context):
        """counts samples with variants in a region
        returns # of unique samples
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectSamplesInMultiRegions(self, request, context):
        """selects samples with variants in regions
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountSamplesInMultiRegions(self, request, context):
        """counts samples with variants in regions
        returns # of unique samples
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectSamplesHomReference(self, request, context):
        """selects samples with confirmed homozygous reference call at a position
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def CountSamplesHomReference(self, request, context):
        """counts samples with confirmed homozygous reference call at a position
        returns # of unique samples; returns -1 if no variants exist at the position in database
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectDeNovo(self, request, context):
        """Variant selection by inheritance model

        naive implementation for de novo candidate variants in proband
        entirely based on existing GT calls, no specialised de novo variant calling pipeline is used
        returns stream of non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectHetDominant(self, request, context):
        """naive implementation for heterozygous dominant candidate variants in affected child
        entirely based on existing GT calls
        returns stream of non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SelectHomRecessive(self, request, context):
        """naive implementation for homozygous recessive candidate variants in affected child
        entirely based on existing GT calls
        returns stream of non-empty sets of unique variants
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Prs(self, request, context):
        """Polygenic risk scores
        PRS implements same calculations as --score in Plink
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SexMismatchCheck(self, request, context):
        """"reported vs observed" sex mismatch check is based on F-statistics
        for deviation from expected number of homozygous alleles performed
        on biallelic SNVs on X chromosome outside PAR. The same method is
        used in Hail 0.2 and Plink 1.7, parameters have similar meaning.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def FstatX(self, request, context):
        """calculates F-statistics as in SexMismatchCheck for all samples in request,
        so distribution and thresholds could be evaluated
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def Kinship(self, request, context):
        """degrees of relatedness & kinship coefficients between samples in dataset
        https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3025716
        returns all pairs or filtered by degree of relatedness
        can be disabled at runtime by setting "DISABLE_KINSHIP=true" env var
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def KinshipDuo(self, request, context):
        """degrees of relatedness & kinship coefficients between 2 samples
        https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3025716
        returns degree of relatedness
        can be disabled at runtime by setting "DISABLE_KINSHIP=true" env var
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def KinshipTrio(self, request, context):
        """degrees of relatedness & kinship coefficients between samples in trio
        https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3025716
        returns all pairs or filtered by degree of relatedness
        can be disabled at runtime by setting "DISABLE_KINSHIP_TRIO=true" env var
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SampleKinship(self, request, context):
        """selects samples from dataset which genetically relate to provided
        sample of interest up to a certain kinship degree;
        sample of interest is provided as a vcf in request;
        https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3025716
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_DnaerysServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Health': grpc.unary_unary_rpc_method_handler(
                    servicer.Health,
                    request_deserializer=dnaerys__pb2.HealthRequest.FromString,
                    response_serializer=dnaerys__pb2.HealthResponse.SerializeToString,
            ),
            'ClusterNodes': grpc.unary_unary_rpc_method_handler(
                    servicer.ClusterNodes,
                    request_deserializer=dnaerys__pb2.ClusterNodesRequest.FromString,
                    response_serializer=dnaerys__pb2.ClusterNodesResponse.SerializeToString,
            ),
            'DatasetInfo': grpc.unary_unary_rpc_method_handler(
                    servicer.DatasetInfo,
                    request_deserializer=dnaerys__pb2.DatasetInfoRequest.FromString,
                    response_serializer=dnaerys__pb2.DatasetInfoResponse.SerializeToString,
            ),
            'SelectVariantsInRegion': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInRegion,
                    request_deserializer=dnaerys__pb2.AllelesInRegionRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInRegion': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInRegion,
                    request_deserializer=dnaerys__pb2.CountAllelesInRegionRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInRegionInSamples': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInRegionInSamples,
                    request_deserializer=dnaerys__pb2.AllelesInRegionInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInRegionInSamples': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInRegionInSamples,
                    request_deserializer=dnaerys__pb2.CountAllelesInRegionInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInRegionInSamplesWithStats': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInRegionInSamplesWithStats,
                    request_deserializer=dnaerys__pb2.AllelesInRegionInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesWithStatsResponse.SerializeToString,
            ),
            'SelectVariantsInBracket': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInBracket,
                    request_deserializer=dnaerys__pb2.AllelesInBracketRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInBracket': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInBracket,
                    request_deserializer=dnaerys__pb2.CountAllelesInBracketRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInBracketInSamples': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInBracketInSamples,
                    request_deserializer=dnaerys__pb2.AllelesInBracketInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInBracketInSamples': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInBracketInSamples,
                    request_deserializer=dnaerys__pb2.CountAllelesInBracketInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInMultiRegions': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInMultiRegions,
                    request_deserializer=dnaerys__pb2.AllelesInMultiRegionsRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInMultiRegions': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInMultiRegions,
                    request_deserializer=dnaerys__pb2.CountAllelesInMultiRegionsRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInMultiRegionsWithStats': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInMultiRegionsWithStats,
                    request_deserializer=dnaerys__pb2.AllelesInMultiRegionsRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesWithStatsResponse.SerializeToString,
            ),
            'SelectVariantsInMultiRegionsInSamples': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInMultiRegionsInSamples,
                    request_deserializer=dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'CountVariantsInMultiRegionsInSamples': grpc.unary_unary_rpc_method_handler(
                    servicer.CountVariantsInMultiRegionsInSamples,
                    request_deserializer=dnaerys__pb2.CountAllelesInMultiRegionsInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.CountAllelesResponse.SerializeToString,
            ),
            'SelectVariantsInMultiRegionsInSamplesWithStats': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectVariantsInMultiRegionsInSamplesWithStats,
                    request_deserializer=dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesWithStatsResponse.SerializeToString,
            ),
            'TopNHWE': grpc.unary_unary_rpc_method_handler(
                    servicer.TopNHWE,
                    request_deserializer=dnaerys__pb2.TopNHWERequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesWithStatsResponse.SerializeToString,
            ),
            'TopNchi2': grpc.unary_unary_rpc_method_handler(
                    servicer.TopNchi2,
                    request_deserializer=dnaerys__pb2.TopNchi2Request.FromString,
                    response_serializer=dnaerys__pb2.AllelesWithStatsResponse.SerializeToString,
            ),
            'SelectSamplesInRegion': grpc.unary_unary_rpc_method_handler(
                    servicer.SelectSamplesInRegion,
                    request_deserializer=dnaerys__pb2.SamplesInRegionRequest.FromString,
                    response_serializer=dnaerys__pb2.SamplesResponse.SerializeToString,
            ),
            'CountSamplesInRegion': grpc.unary_unary_rpc_method_handler(
                    servicer.CountSamplesInRegion,
                    request_deserializer=dnaerys__pb2.SamplesInRegionRequest.FromString,
                    response_serializer=dnaerys__pb2.CountSamplesResponse.SerializeToString,
            ),
            'SelectSamplesInMultiRegions': grpc.unary_unary_rpc_method_handler(
                    servicer.SelectSamplesInMultiRegions,
                    request_deserializer=dnaerys__pb2.SamplesInMultiRegionsRequest.FromString,
                    response_serializer=dnaerys__pb2.SamplesResponse.SerializeToString,
            ),
            'CountSamplesInMultiRegions': grpc.unary_unary_rpc_method_handler(
                    servicer.CountSamplesInMultiRegions,
                    request_deserializer=dnaerys__pb2.SamplesInMultiRegionsRequest.FromString,
                    response_serializer=dnaerys__pb2.CountSamplesResponse.SerializeToString,
            ),
            'SelectSamplesHomReference': grpc.unary_unary_rpc_method_handler(
                    servicer.SelectSamplesHomReference,
                    request_deserializer=dnaerys__pb2.SamplesHomRefRequest.FromString,
                    response_serializer=dnaerys__pb2.SamplesResponse.SerializeToString,
            ),
            'CountSamplesHomReference': grpc.unary_unary_rpc_method_handler(
                    servicer.CountSamplesHomReference,
                    request_deserializer=dnaerys__pb2.SamplesHomRefRequest.FromString,
                    response_serializer=dnaerys__pb2.CountSamplesResponse.SerializeToString,
            ),
            'SelectDeNovo': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectDeNovo,
                    request_deserializer=dnaerys__pb2.DeNovoRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'SelectHetDominant': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectHetDominant,
                    request_deserializer=dnaerys__pb2.HetDominantRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'SelectHomRecessive': grpc.unary_stream_rpc_method_handler(
                    servicer.SelectHomRecessive,
                    request_deserializer=dnaerys__pb2.HomRecessiveRequest.FromString,
                    response_serializer=dnaerys__pb2.AllelesResponse.SerializeToString,
            ),
            'Prs': grpc.unary_unary_rpc_method_handler(
                    servicer.Prs,
                    request_deserializer=dnaerys__pb2.PRSRequest.FromString,
                    response_serializer=dnaerys__pb2.PRSResponse.SerializeToString,
            ),
            'SexMismatchCheck': grpc.unary_unary_rpc_method_handler(
                    servicer.SexMismatchCheck,
                    request_deserializer=dnaerys__pb2.FstatXRequest.FromString,
                    response_serializer=dnaerys__pb2.SexMismatchResponse.SerializeToString,
            ),
            'FstatX': grpc.unary_unary_rpc_method_handler(
                    servicer.FstatX,
                    request_deserializer=dnaerys__pb2.FstatXRequest.FromString,
                    response_serializer=dnaerys__pb2.FstatXResponse.SerializeToString,
            ),
            'Kinship': grpc.unary_unary_rpc_method_handler(
                    servicer.Kinship,
                    request_deserializer=dnaerys__pb2.KinshipRequest.FromString,
                    response_serializer=dnaerys__pb2.KinshipResponse.SerializeToString,
            ),
            'KinshipDuo': grpc.unary_unary_rpc_method_handler(
                    servicer.KinshipDuo,
                    request_deserializer=dnaerys__pb2.KinshipDuoRequest.FromString,
                    response_serializer=dnaerys__pb2.KinshipResponse.SerializeToString,
            ),
            'KinshipTrio': grpc.unary_unary_rpc_method_handler(
                    servicer.KinshipTrio,
                    request_deserializer=dnaerys__pb2.KinshipTrioRequest.FromString,
                    response_serializer=dnaerys__pb2.KinshipResponse.SerializeToString,
            ),
            'SampleKinship': grpc.unary_unary_rpc_method_handler(
                    servicer.SampleKinship,
                    request_deserializer=dnaerys__pb2.SampleKinshipRequest.FromString,
                    response_serializer=dnaerys__pb2.SampleKinshipResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'org.dnaerys.cluster.grpc.DnaerysService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('org.dnaerys.cluster.grpc.DnaerysService', rpc_method_handlers)


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

    @staticmethod
    def Health(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/Health',
            dnaerys__pb2.HealthRequest.SerializeToString,
            dnaerys__pb2.HealthResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def ClusterNodes(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/ClusterNodes',
            dnaerys__pb2.ClusterNodesRequest.SerializeToString,
            dnaerys__pb2.ClusterNodesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DatasetInfo(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/DatasetInfo',
            dnaerys__pb2.DatasetInfoRequest.SerializeToString,
            dnaerys__pb2.DatasetInfoResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInRegion(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegion',
            dnaerys__pb2.AllelesInRegionRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInRegion(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInRegion',
            dnaerys__pb2.CountAllelesInRegionRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInRegionInSamples(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegionInSamples',
            dnaerys__pb2.AllelesInRegionInSamplesRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInRegionInSamples(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInRegionInSamples',
            dnaerys__pb2.CountAllelesInRegionInSamplesRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInRegionInSamplesWithStats(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInRegionInSamplesWithStats',
            dnaerys__pb2.AllelesInRegionInSamplesRequest.SerializeToString,
            dnaerys__pb2.AllelesWithStatsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInBracket(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInBracket',
            dnaerys__pb2.AllelesInBracketRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInBracket(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInBracket',
            dnaerys__pb2.CountAllelesInBracketRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInBracketInSamples(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInBracketInSamples',
            dnaerys__pb2.AllelesInBracketInSamplesRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInBracketInSamples(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInBracketInSamples',
            dnaerys__pb2.CountAllelesInBracketInSamplesRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInMultiRegions(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegions',
            dnaerys__pb2.AllelesInMultiRegionsRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInMultiRegions(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInMultiRegions',
            dnaerys__pb2.CountAllelesInMultiRegionsRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInMultiRegionsWithStats(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsWithStats',
            dnaerys__pb2.AllelesInMultiRegionsRequest.SerializeToString,
            dnaerys__pb2.AllelesWithStatsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInMultiRegionsInSamples(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsInSamples',
            dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountVariantsInMultiRegionsInSamples(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountVariantsInMultiRegionsInSamples',
            dnaerys__pb2.CountAllelesInMultiRegionsInSamplesRequest.SerializeToString,
            dnaerys__pb2.CountAllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectVariantsInMultiRegionsInSamplesWithStats(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectVariantsInMultiRegionsInSamplesWithStats',
            dnaerys__pb2.AllelesInMultiRegionsInSamplesRequest.SerializeToString,
            dnaerys__pb2.AllelesWithStatsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def TopNHWE(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/TopNHWE',
            dnaerys__pb2.TopNHWERequest.SerializeToString,
            dnaerys__pb2.AllelesWithStatsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def TopNchi2(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/TopNchi2',
            dnaerys__pb2.TopNchi2Request.SerializeToString,
            dnaerys__pb2.AllelesWithStatsResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectSamplesInRegion(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesInRegion',
            dnaerys__pb2.SamplesInRegionRequest.SerializeToString,
            dnaerys__pb2.SamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountSamplesInRegion(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesInRegion',
            dnaerys__pb2.SamplesInRegionRequest.SerializeToString,
            dnaerys__pb2.CountSamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectSamplesInMultiRegions(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesInMultiRegions',
            dnaerys__pb2.SamplesInMultiRegionsRequest.SerializeToString,
            dnaerys__pb2.SamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountSamplesInMultiRegions(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesInMultiRegions',
            dnaerys__pb2.SamplesInMultiRegionsRequest.SerializeToString,
            dnaerys__pb2.CountSamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectSamplesHomReference(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectSamplesHomReference',
            dnaerys__pb2.SamplesHomRefRequest.SerializeToString,
            dnaerys__pb2.SamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def CountSamplesHomReference(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/CountSamplesHomReference',
            dnaerys__pb2.SamplesHomRefRequest.SerializeToString,
            dnaerys__pb2.CountSamplesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectDeNovo(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectDeNovo',
            dnaerys__pb2.DeNovoRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectHetDominant(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectHetDominant',
            dnaerys__pb2.HetDominantRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SelectHomRecessive(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_stream(
            request,
            target,
            '/org.dnaerys.cluster.grpc.DnaerysService/SelectHomRecessive',
            dnaerys__pb2.HomRecessiveRequest.SerializeToString,
            dnaerys__pb2.AllelesResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def Prs(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/Prs',
            dnaerys__pb2.PRSRequest.SerializeToString,
            dnaerys__pb2.PRSResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SexMismatchCheck(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/SexMismatchCheck',
            dnaerys__pb2.FstatXRequest.SerializeToString,
            dnaerys__pb2.SexMismatchResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def FstatX(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/FstatX',
            dnaerys__pb2.FstatXRequest.SerializeToString,
            dnaerys__pb2.FstatXResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def Kinship(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/Kinship',
            dnaerys__pb2.KinshipRequest.SerializeToString,
            dnaerys__pb2.KinshipResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def KinshipDuo(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/KinshipDuo',
            dnaerys__pb2.KinshipDuoRequest.SerializeToString,
            dnaerys__pb2.KinshipResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def KinshipTrio(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/KinshipTrio',
            dnaerys__pb2.KinshipTrioRequest.SerializeToString,
            dnaerys__pb2.KinshipResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def SampleKinship(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,
            '/org.dnaerys.cluster.grpc.DnaerysService/SampleKinship',
            dnaerys__pb2.SampleKinshipRequest.SerializeToString,
            dnaerys__pb2.SampleKinshipResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
