# @generated by generate_proto_mypy_stubs.py.  Do not edit!
import sys
from google.protobuf.descriptor import (
    Descriptor as google___protobuf___descriptor___Descriptor,
)

from google.protobuf.internal.containers import (
    RepeatedCompositeFieldContainer as google___protobuf___internal___containers___RepeatedCompositeFieldContainer,
    RepeatedScalarFieldContainer as google___protobuf___internal___containers___RepeatedScalarFieldContainer,
)

from google.protobuf.message import (
    Message as google___protobuf___message___Message,
)

from typing import (
    Iterable as typing___Iterable,
    Mapping as typing___Mapping,
    MutableMapping as typing___MutableMapping,
    Optional as typing___Optional,
    Text as typing___Text,
    Union as typing___Union,
)

from typing_extensions import (
    Literal as typing_extensions___Literal,
)


builtin___bool = bool
builtin___bytes = bytes
builtin___float = float
builtin___int = int
if sys.version_info < (3,):
    builtin___buffer = buffer
    builtin___unicode = unicode


class Par(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def sends(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Send]: ...

    @property
    def receives(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Receive]: ...

    @property
    def news(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[New]: ...

    @property
    def exprs(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Expr]: ...

    @property
    def matches(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Match]: ...

    @property
    def unforgeables(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[GUnforgeable]: ...

    @property
    def bundles(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Bundle]: ...

    @property
    def connectives(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Connective]: ...

    def __init__(self,
        *,
        sends : typing___Optional[typing___Iterable[Send]] = None,
        receives : typing___Optional[typing___Iterable[Receive]] = None,
        news : typing___Optional[typing___Iterable[New]] = None,
        exprs : typing___Optional[typing___Iterable[Expr]] = None,
        matches : typing___Optional[typing___Iterable[Match]] = None,
        unforgeables : typing___Optional[typing___Iterable[GUnforgeable]] = None,
        bundles : typing___Optional[typing___Iterable[Bundle]] = None,
        connectives : typing___Optional[typing___Iterable[Connective]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Par: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Par: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"bundles",b"bundles",u"connective_used",b"connective_used",u"connectives",b"connectives",u"exprs",b"exprs",u"locallyFree",b"locallyFree",u"matches",b"matches",u"news",b"news",u"receives",b"receives",u"sends",b"sends",u"unforgeables",b"unforgeables"]) -> None: ...

class TaggedContinuation(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    scala_body_ref = ... # type: builtin___int

    @property
    def par_body(self) -> ParWithRandom: ...

    def __init__(self,
        *,
        par_body : typing___Optional[ParWithRandom] = None,
        scala_body_ref : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> TaggedContinuation: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> TaggedContinuation: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"par_body",b"par_body",u"scala_body_ref",b"scala_body_ref",u"tagged_cont",b"tagged_cont"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"par_body",b"par_body",u"scala_body_ref",b"scala_body_ref",u"tagged_cont",b"tagged_cont"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"tagged_cont",b"tagged_cont"]) -> typing_extensions___Literal["par_body","scala_body_ref"]: ...

class ParWithRandom(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    randomState = ... # type: builtin___bytes

    @property
    def body(self) -> Par: ...

    def __init__(self,
        *,
        body : typing___Optional[Par] = None,
        randomState : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ParWithRandom: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ParWithRandom: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"body",b"body"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"body",b"body",u"randomState",b"randomState"]) -> None: ...

class PCost(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    cost = ... # type: builtin___int

    def __init__(self,
        *,
        cost : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> PCost: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> PCost: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"cost",b"cost"]) -> None: ...

class ListParWithRandom(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    randomState = ... # type: builtin___bytes

    @property
    def pars(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    def __init__(self,
        *,
        pars : typing___Optional[typing___Iterable[Par]] = None,
        randomState : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ListParWithRandom: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ListParWithRandom: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"pars",b"pars",u"randomState",b"randomState"]) -> None: ...

class Var(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class WildcardMsg(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

        def __init__(self,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> Var.WildcardMsg: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Var.WildcardMsg: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...

    bound_var = ... # type: builtin___int
    free_var = ... # type: builtin___int

    @property
    def wildcard(self) -> Var.WildcardMsg: ...

    def __init__(self,
        *,
        bound_var : typing___Optional[builtin___int] = None,
        free_var : typing___Optional[builtin___int] = None,
        wildcard : typing___Optional[Var.WildcardMsg] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Var: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Var: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"bound_var",b"bound_var",u"free_var",b"free_var",u"var_instance",b"var_instance",u"wildcard",b"wildcard"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"bound_var",b"bound_var",u"free_var",b"free_var",u"var_instance",b"var_instance",u"wildcard",b"wildcard"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"var_instance",b"var_instance"]) -> typing_extensions___Literal["bound_var","free_var","wildcard"]: ...

class Bundle(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    writeFlag = ... # type: builtin___bool
    readFlag = ... # type: builtin___bool

    @property
    def body(self) -> Par: ...

    def __init__(self,
        *,
        body : typing___Optional[Par] = None,
        writeFlag : typing___Optional[builtin___bool] = None,
        readFlag : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Bundle: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Bundle: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"body",b"body"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"body",b"body",u"readFlag",b"readFlag",u"writeFlag",b"writeFlag"]) -> None: ...

class Send(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    persistent = ... # type: builtin___bool
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def chan(self) -> Par: ...

    @property
    def data(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    def __init__(self,
        *,
        chan : typing___Optional[Par] = None,
        data : typing___Optional[typing___Iterable[Par]] = None,
        persistent : typing___Optional[builtin___bool] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Send: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Send: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"chan",b"chan"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"chan",b"chan",u"connective_used",b"connective_used",u"data",b"data",u"locallyFree",b"locallyFree",u"persistent",b"persistent"]) -> None: ...

class ReceiveBind(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    freeCount = ... # type: builtin___int

    @property
    def patterns(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    @property
    def source(self) -> Par: ...

    @property
    def remainder(self) -> Var: ...

    def __init__(self,
        *,
        patterns : typing___Optional[typing___Iterable[Par]] = None,
        source : typing___Optional[Par] = None,
        remainder : typing___Optional[Var] = None,
        freeCount : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ReceiveBind: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ReceiveBind: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"remainder",b"remainder",u"source",b"source"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"freeCount",b"freeCount",u"patterns",b"patterns",u"remainder",b"remainder",u"source",b"source"]) -> None: ...

class BindPattern(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    freeCount = ... # type: builtin___int

    @property
    def patterns(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    @property
    def remainder(self) -> Var: ...

    def __init__(self,
        *,
        patterns : typing___Optional[typing___Iterable[Par]] = None,
        remainder : typing___Optional[Var] = None,
        freeCount : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> BindPattern: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> BindPattern: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"remainder",b"remainder"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"freeCount",b"freeCount",u"patterns",b"patterns",u"remainder",b"remainder"]) -> None: ...

class ListBindPatterns(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def patterns(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[BindPattern]: ...

    def __init__(self,
        *,
        patterns : typing___Optional[typing___Iterable[BindPattern]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ListBindPatterns: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ListBindPatterns: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"patterns",b"patterns"]) -> None: ...

class Receive(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    persistent = ... # type: builtin___bool
    peek = ... # type: builtin___bool
    bindCount = ... # type: builtin___int
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def binds(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[ReceiveBind]: ...

    @property
    def body(self) -> Par: ...

    def __init__(self,
        *,
        binds : typing___Optional[typing___Iterable[ReceiveBind]] = None,
        body : typing___Optional[Par] = None,
        persistent : typing___Optional[builtin___bool] = None,
        peek : typing___Optional[builtin___bool] = None,
        bindCount : typing___Optional[builtin___int] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Receive: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Receive: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"body",b"body"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"bindCount",b"bindCount",u"binds",b"binds",u"body",b"body",u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"peek",b"peek",u"persistent",b"persistent"]) -> None: ...

class New(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    class InjectionsEntry(google___protobuf___message___Message):
        DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
        key = ... # type: typing___Text

        @property
        def value(self) -> Par: ...

        def __init__(self,
            *,
            key : typing___Optional[typing___Text] = None,
            value : typing___Optional[Par] = None,
            ) -> None: ...
        if sys.version_info >= (3,):
            @classmethod
            def FromString(cls, s: builtin___bytes) -> New.InjectionsEntry: ...
        else:
            @classmethod
            def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> New.InjectionsEntry: ...
        def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
        def HasField(self, field_name: typing_extensions___Literal[u"value",b"value"]) -> builtin___bool: ...
        def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

    bindCount = ... # type: builtin___int
    uri = ... # type: google___protobuf___internal___containers___RepeatedScalarFieldContainer[typing___Text]
    locallyFree = ... # type: builtin___bytes

    @property
    def p(self) -> Par: ...

    @property
    def injections(self) -> typing___MutableMapping[typing___Text, Par]: ...

    def __init__(self,
        *,
        bindCount : typing___Optional[builtin___int] = None,
        p : typing___Optional[Par] = None,
        uri : typing___Optional[typing___Iterable[typing___Text]] = None,
        injections : typing___Optional[typing___Mapping[typing___Text, Par]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> New: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> New: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p",b"p"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"bindCount",b"bindCount",u"injections",b"injections",u"locallyFree",b"locallyFree",u"p",b"p",u"uri",b"uri"]) -> None: ...

class MatchCase(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    freeCount = ... # type: builtin___int

    @property
    def pattern(self) -> Par: ...

    @property
    def source(self) -> Par: ...

    def __init__(self,
        *,
        pattern : typing___Optional[Par] = None,
        source : typing___Optional[Par] = None,
        freeCount : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> MatchCase: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> MatchCase: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"pattern",b"pattern",u"source",b"source"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"freeCount",b"freeCount",u"pattern",b"pattern",u"source",b"source"]) -> None: ...

class Match(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def target(self) -> Par: ...

    @property
    def cases(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[MatchCase]: ...

    def __init__(self,
        *,
        target : typing___Optional[Par] = None,
        cases : typing___Optional[typing___Iterable[MatchCase]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Match: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Match: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"target",b"target"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"cases",b"cases",u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"target",b"target"]) -> None: ...

class Expr(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    g_bool = ... # type: builtin___bool
    g_int = ... # type: builtin___int
    g_string = ... # type: typing___Text
    g_uri = ... # type: typing___Text
    g_byte_array = ... # type: builtin___bytes

    @property
    def e_not_body(self) -> ENot: ...

    @property
    def e_neg_body(self) -> ENeg: ...

    @property
    def e_mult_body(self) -> EMult: ...

    @property
    def e_div_body(self) -> EDiv: ...

    @property
    def e_plus_body(self) -> EPlus: ...

    @property
    def e_minus_body(self) -> EMinus: ...

    @property
    def e_lt_body(self) -> ELt: ...

    @property
    def e_lte_body(self) -> ELte: ...

    @property
    def e_gt_body(self) -> EGt: ...

    @property
    def e_gte_body(self) -> EGte: ...

    @property
    def e_eq_body(self) -> EEq: ...

    @property
    def e_neq_body(self) -> ENeq: ...

    @property
    def e_and_body(self) -> EAnd: ...

    @property
    def e_or_body(self) -> EOr: ...

    @property
    def e_var_body(self) -> EVar: ...

    @property
    def e_list_body(self) -> EList: ...

    @property
    def e_tuple_body(self) -> ETuple: ...

    @property
    def e_set_body(self) -> ESet: ...

    @property
    def e_map_body(self) -> EMap: ...

    @property
    def e_method_body(self) -> EMethod: ...

    @property
    def e_matches_body(self) -> EMatches: ...

    @property
    def e_percent_percent_body(self) -> EPercentPercent: ...

    @property
    def e_plus_plus_body(self) -> EPlusPlus: ...

    @property
    def e_minus_minus_body(self) -> EMinusMinus: ...

    @property
    def e_mod_body(self) -> EMod: ...

    def __init__(self,
        *,
        g_bool : typing___Optional[builtin___bool] = None,
        g_int : typing___Optional[builtin___int] = None,
        g_string : typing___Optional[typing___Text] = None,
        g_uri : typing___Optional[typing___Text] = None,
        g_byte_array : typing___Optional[builtin___bytes] = None,
        e_not_body : typing___Optional[ENot] = None,
        e_neg_body : typing___Optional[ENeg] = None,
        e_mult_body : typing___Optional[EMult] = None,
        e_div_body : typing___Optional[EDiv] = None,
        e_plus_body : typing___Optional[EPlus] = None,
        e_minus_body : typing___Optional[EMinus] = None,
        e_lt_body : typing___Optional[ELt] = None,
        e_lte_body : typing___Optional[ELte] = None,
        e_gt_body : typing___Optional[EGt] = None,
        e_gte_body : typing___Optional[EGte] = None,
        e_eq_body : typing___Optional[EEq] = None,
        e_neq_body : typing___Optional[ENeq] = None,
        e_and_body : typing___Optional[EAnd] = None,
        e_or_body : typing___Optional[EOr] = None,
        e_var_body : typing___Optional[EVar] = None,
        e_list_body : typing___Optional[EList] = None,
        e_tuple_body : typing___Optional[ETuple] = None,
        e_set_body : typing___Optional[ESet] = None,
        e_map_body : typing___Optional[EMap] = None,
        e_method_body : typing___Optional[EMethod] = None,
        e_matches_body : typing___Optional[EMatches] = None,
        e_percent_percent_body : typing___Optional[EPercentPercent] = None,
        e_plus_plus_body : typing___Optional[EPlusPlus] = None,
        e_minus_minus_body : typing___Optional[EMinusMinus] = None,
        e_mod_body : typing___Optional[EMod] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Expr: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Expr: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"e_and_body",b"e_and_body",u"e_div_body",b"e_div_body",u"e_eq_body",b"e_eq_body",u"e_gt_body",b"e_gt_body",u"e_gte_body",b"e_gte_body",u"e_list_body",b"e_list_body",u"e_lt_body",b"e_lt_body",u"e_lte_body",b"e_lte_body",u"e_map_body",b"e_map_body",u"e_matches_body",b"e_matches_body",u"e_method_body",b"e_method_body",u"e_minus_body",b"e_minus_body",u"e_minus_minus_body",b"e_minus_minus_body",u"e_mod_body",b"e_mod_body",u"e_mult_body",b"e_mult_body",u"e_neg_body",b"e_neg_body",u"e_neq_body",b"e_neq_body",u"e_not_body",b"e_not_body",u"e_or_body",b"e_or_body",u"e_percent_percent_body",b"e_percent_percent_body",u"e_plus_body",b"e_plus_body",u"e_plus_plus_body",b"e_plus_plus_body",u"e_set_body",b"e_set_body",u"e_tuple_body",b"e_tuple_body",u"e_var_body",b"e_var_body",u"expr_instance",b"expr_instance",u"g_bool",b"g_bool",u"g_byte_array",b"g_byte_array",u"g_int",b"g_int",u"g_string",b"g_string",u"g_uri",b"g_uri"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"e_and_body",b"e_and_body",u"e_div_body",b"e_div_body",u"e_eq_body",b"e_eq_body",u"e_gt_body",b"e_gt_body",u"e_gte_body",b"e_gte_body",u"e_list_body",b"e_list_body",u"e_lt_body",b"e_lt_body",u"e_lte_body",b"e_lte_body",u"e_map_body",b"e_map_body",u"e_matches_body",b"e_matches_body",u"e_method_body",b"e_method_body",u"e_minus_body",b"e_minus_body",u"e_minus_minus_body",b"e_minus_minus_body",u"e_mod_body",b"e_mod_body",u"e_mult_body",b"e_mult_body",u"e_neg_body",b"e_neg_body",u"e_neq_body",b"e_neq_body",u"e_not_body",b"e_not_body",u"e_or_body",b"e_or_body",u"e_percent_percent_body",b"e_percent_percent_body",u"e_plus_body",b"e_plus_body",u"e_plus_plus_body",b"e_plus_plus_body",u"e_set_body",b"e_set_body",u"e_tuple_body",b"e_tuple_body",u"e_var_body",b"e_var_body",u"expr_instance",b"expr_instance",u"g_bool",b"g_bool",u"g_byte_array",b"g_byte_array",u"g_int",b"g_int",u"g_string",b"g_string",u"g_uri",b"g_uri"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"expr_instance",b"expr_instance"]) -> typing_extensions___Literal["g_bool","g_int","g_string","g_uri","g_byte_array","e_not_body","e_neg_body","e_mult_body","e_div_body","e_plus_body","e_minus_body","e_lt_body","e_lte_body","e_gt_body","e_gte_body","e_eq_body","e_neq_body","e_and_body","e_or_body","e_var_body","e_list_body","e_tuple_body","e_set_body","e_map_body","e_method_body","e_matches_body","e_percent_percent_body","e_plus_plus_body","e_minus_minus_body","e_mod_body"]: ...

class EList(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def ps(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    @property
    def remainder(self) -> Var: ...

    def __init__(self,
        *,
        ps : typing___Optional[typing___Iterable[Par]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        remainder : typing___Optional[Var] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EList: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EList: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"remainder",b"remainder"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"ps",b"ps",u"remainder",b"remainder"]) -> None: ...

class ETuple(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def ps(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    def __init__(self,
        *,
        ps : typing___Optional[typing___Iterable[Par]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ETuple: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ETuple: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"ps",b"ps"]) -> None: ...

class ESet(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def ps(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    @property
    def remainder(self) -> Var: ...

    def __init__(self,
        *,
        ps : typing___Optional[typing___Iterable[Par]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        remainder : typing___Optional[Var] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ESet: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ESet: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"remainder",b"remainder"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"ps",b"ps",u"remainder",b"remainder"]) -> None: ...

class EMap(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def kvs(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[KeyValuePair]: ...

    @property
    def remainder(self) -> Var: ...

    def __init__(self,
        *,
        kvs : typing___Optional[typing___Iterable[KeyValuePair]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        remainder : typing___Optional[Var] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMap: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMap: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"remainder",b"remainder"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"connective_used",b"connective_used",u"kvs",b"kvs",u"locallyFree",b"locallyFree",u"remainder",b"remainder"]) -> None: ...

class EMethod(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    methodName = ... # type: typing___Text
    locallyFree = ... # type: builtin___bytes
    connective_used = ... # type: builtin___bool

    @property
    def target(self) -> Par: ...

    @property
    def arguments(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    def __init__(self,
        *,
        methodName : typing___Optional[typing___Text] = None,
        target : typing___Optional[Par] = None,
        arguments : typing___Optional[typing___Iterable[Par]] = None,
        locallyFree : typing___Optional[builtin___bytes] = None,
        connective_used : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMethod: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMethod: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"target",b"target"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"arguments",b"arguments",u"connective_used",b"connective_used",u"locallyFree",b"locallyFree",u"methodName",b"methodName",u"target",b"target"]) -> None: ...

class KeyValuePair(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def key(self) -> Par: ...

    @property
    def value(self) -> Par: ...

    def __init__(self,
        *,
        key : typing___Optional[Par] = None,
        value : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> KeyValuePair: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> KeyValuePair: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"key",b"key",u"value",b"value"]) -> None: ...

class EVar(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def v(self) -> Var: ...

    def __init__(self,
        *,
        v : typing___Optional[Var] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EVar: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EVar: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"v",b"v"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"v",b"v"]) -> None: ...

class ENot(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p(self) -> Par: ...

    def __init__(self,
        *,
        p : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ENot: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ENot: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p",b"p"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p",b"p"]) -> None: ...

class ENeg(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p(self) -> Par: ...

    def __init__(self,
        *,
        p : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ENeg: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ENeg: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p",b"p"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p",b"p"]) -> None: ...

class EMult(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMult: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMult: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EDiv(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EDiv: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EDiv: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EMod(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMod: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMod: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EPlus(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EPlus: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EPlus: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EMinus(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMinus: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMinus: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class ELt(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ELt: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ELt: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class ELte(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ELte: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ELte: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EGt(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EGt: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EGt: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EGte(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EGte: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EGte: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EEq(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EEq: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EEq: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class ENeq(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ENeq: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ENeq: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EAnd(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EAnd: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EAnd: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EOr(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EOr: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EOr: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EMatches(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def target(self) -> Par: ...

    @property
    def pattern(self) -> Par: ...

    def __init__(self,
        *,
        target : typing___Optional[Par] = None,
        pattern : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMatches: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMatches: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"pattern",b"pattern",u"target",b"target"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"pattern",b"pattern",u"target",b"target"]) -> None: ...

class EPercentPercent(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EPercentPercent: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EPercentPercent: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EPlusPlus(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EPlusPlus: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EPlusPlus: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class EMinusMinus(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def p1(self) -> Par: ...

    @property
    def p2(self) -> Par: ...

    def __init__(self,
        *,
        p1 : typing___Optional[Par] = None,
        p2 : typing___Optional[Par] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> EMinusMinus: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> EMinusMinus: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"p1",b"p1",u"p2",b"p2"]) -> None: ...

class Connective(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    conn_bool = ... # type: builtin___bool
    conn_int = ... # type: builtin___bool
    conn_string = ... # type: builtin___bool
    conn_uri = ... # type: builtin___bool
    conn_byte_array = ... # type: builtin___bool

    @property
    def conn_and_body(self) -> ConnectiveBody: ...

    @property
    def conn_or_body(self) -> ConnectiveBody: ...

    @property
    def conn_not_body(self) -> Par: ...

    @property
    def var_ref_body(self) -> VarRef: ...

    def __init__(self,
        *,
        conn_and_body : typing___Optional[ConnectiveBody] = None,
        conn_or_body : typing___Optional[ConnectiveBody] = None,
        conn_not_body : typing___Optional[Par] = None,
        var_ref_body : typing___Optional[VarRef] = None,
        conn_bool : typing___Optional[builtin___bool] = None,
        conn_int : typing___Optional[builtin___bool] = None,
        conn_string : typing___Optional[builtin___bool] = None,
        conn_uri : typing___Optional[builtin___bool] = None,
        conn_byte_array : typing___Optional[builtin___bool] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> Connective: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> Connective: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"conn_and_body",b"conn_and_body",u"conn_bool",b"conn_bool",u"conn_byte_array",b"conn_byte_array",u"conn_int",b"conn_int",u"conn_not_body",b"conn_not_body",u"conn_or_body",b"conn_or_body",u"conn_string",b"conn_string",u"conn_uri",b"conn_uri",u"connective_instance",b"connective_instance",u"var_ref_body",b"var_ref_body"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"conn_and_body",b"conn_and_body",u"conn_bool",b"conn_bool",u"conn_byte_array",b"conn_byte_array",u"conn_int",b"conn_int",u"conn_not_body",b"conn_not_body",u"conn_or_body",b"conn_or_body",u"conn_string",b"conn_string",u"conn_uri",b"conn_uri",u"connective_instance",b"connective_instance",u"var_ref_body",b"var_ref_body"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"connective_instance",b"connective_instance"]) -> typing_extensions___Literal["conn_and_body","conn_or_body","conn_not_body","var_ref_body","conn_bool","conn_int","conn_string","conn_uri","conn_byte_array"]: ...

class VarRef(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    index = ... # type: builtin___int
    depth = ... # type: builtin___int

    def __init__(self,
        *,
        index : typing___Optional[builtin___int] = None,
        depth : typing___Optional[builtin___int] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> VarRef: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> VarRef: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"depth",b"depth",u"index",b"index"]) -> None: ...

class ConnectiveBody(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def ps(self) -> google___protobuf___internal___containers___RepeatedCompositeFieldContainer[Par]: ...

    def __init__(self,
        *,
        ps : typing___Optional[typing___Iterable[Par]] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> ConnectiveBody: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> ConnectiveBody: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"ps",b"ps"]) -> None: ...

class DeployId(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    sig = ... # type: builtin___bytes

    def __init__(self,
        *,
        sig : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> DeployId: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> DeployId: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"sig",b"sig"]) -> None: ...

class DeployerId(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    publicKey = ... # type: builtin___bytes

    def __init__(self,
        *,
        publicKey : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> DeployerId: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> DeployerId: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"publicKey",b"publicKey"]) -> None: ...

class GUnforgeable(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    @property
    def g_private_body(self) -> GPrivate: ...

    @property
    def g_deploy_id_body(self) -> GDeployId: ...

    @property
    def g_deployer_id_body(self) -> GDeployerId: ...

    @property
    def g_sys_auth_token_body(self) -> GSysAuthToken: ...

    def __init__(self,
        *,
        g_private_body : typing___Optional[GPrivate] = None,
        g_deploy_id_body : typing___Optional[GDeployId] = None,
        g_deployer_id_body : typing___Optional[GDeployerId] = None,
        g_sys_auth_token_body : typing___Optional[GSysAuthToken] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GUnforgeable: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GUnforgeable: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def HasField(self, field_name: typing_extensions___Literal[u"g_deploy_id_body",b"g_deploy_id_body",u"g_deployer_id_body",b"g_deployer_id_body",u"g_private_body",b"g_private_body",u"g_sys_auth_token_body",b"g_sys_auth_token_body",u"unf_instance",b"unf_instance"]) -> builtin___bool: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"g_deploy_id_body",b"g_deploy_id_body",u"g_deployer_id_body",b"g_deployer_id_body",u"g_private_body",b"g_private_body",u"g_sys_auth_token_body",b"g_sys_auth_token_body",u"unf_instance",b"unf_instance"]) -> None: ...
    def WhichOneof(self, oneof_group: typing_extensions___Literal[u"unf_instance",b"unf_instance"]) -> typing_extensions___Literal["g_private_body","g_deploy_id_body","g_deployer_id_body","g_sys_auth_token_body"]: ...

class GPrivate(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    id = ... # type: builtin___bytes

    def __init__(self,
        *,
        id : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GPrivate: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GPrivate: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"id",b"id"]) -> None: ...

class GDeployId(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    sig = ... # type: builtin___bytes

    def __init__(self,
        *,
        sig : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GDeployId: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GDeployId: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"sig",b"sig"]) -> None: ...

class GDeployerId(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...
    publicKey = ... # type: builtin___bytes

    def __init__(self,
        *,
        publicKey : typing___Optional[builtin___bytes] = None,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GDeployerId: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GDeployerId: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def ClearField(self, field_name: typing_extensions___Literal[u"publicKey",b"publicKey"]) -> None: ...

class GSysAuthToken(google___protobuf___message___Message):
    DESCRIPTOR: google___protobuf___descriptor___Descriptor = ...

    def __init__(self,
        ) -> None: ...
    if sys.version_info >= (3,):
        @classmethod
        def FromString(cls, s: builtin___bytes) -> GSysAuthToken: ...
    else:
        @classmethod
        def FromString(cls, s: typing___Union[builtin___bytes, builtin___buffer, builtin___unicode]) -> GSysAuthToken: ...
    def MergeFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
    def CopyFrom(self, other_msg: google___protobuf___message___Message) -> None: ...
