### ms-cmrp_clusapi3.idl
"""
RPC definitions for the following interfaces:
- clusapi (v3.0): b97db8b2-4c63-11cf-bff6-08002be23f2f
This file is auto-generated by midl-to-scapy, do not modify.
"""

from enum import IntEnum
import uuid

from scapy.fields import PacketListField
from scapy.layers.dcerpc import (
    NDRPacket,
    DceRpcOp,
    NDRByteField,
    NDRConfPacketListField,
    NDRConfStrLenField,
    NDRConfStrLenFieldUtf16,
    NDRConfVarPacketListField,
    NDRConfVarStrLenField,
    NDRConfVarStrLenFieldUtf16,
    NDRConfVarStrNullField,
    NDRConfVarStrNullFieldUtf16,
    NDRContextHandle,
    NDRFullPointerField,
    NDRInt3264EnumField,
    NDRInt3264Field,
    NDRIntField,
    NDRLongField,
    NDRPacketField,
    NDRShortField,
    NDRSignedIntField,
    NDRSignedLongField,
    register_dcerpc_interface,
)


class ApiOpenCluster_Request(NDRPacket):
    fields_desc = []


class ApiOpenCluster_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0)]


class ApiCloseCluster_Request(NDRPacket):
    fields_desc = [NDRPacketField("Cluster", NDRContextHandle(), NDRContextHandle)]


class ApiCloseCluster_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Cluster", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiSetClusterName_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("NewClusterName", "")]


class ApiSetClusterName_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetClusterName_Request(NDRPacket):
    fields_desc = []


class ApiGetClusterName_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("ClusterName", "")),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("NodeName", "")),
        NDRIntField("status", 0),
    ]


class ApiGetClusterVersion_Request(NDRPacket):
    fields_desc = []


class ApiGetClusterVersion_Response(NDRPacket):
    fields_desc = [
        NDRShortField("lpwMajorVersion", 0),
        NDRShortField("lpwMinorVersion", 0),
        NDRShortField("lpwBuildNumber", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszVendorId", "")),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszCSDVersion", "")),
        NDRIntField("status", 0),
    ]


class ApiGetQuorumResource_Request(NDRPacket):
    fields_desc = []


class ApiGetQuorumResource_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszResourceName", "")),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszDeviceName", "")),
        NDRIntField("pdwMaxQuorumLogSize", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetQuorumResource_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszDeviceName", ""),
        NDRIntField("dwMaxQuorumLogSize", 0),
    ]


class ApiSetQuorumResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ENUM_ENTRY(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRIntField("Type", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", ""), deferred=True),
    ]


class PENUM_LIST(NDRPacket):
    ALIGNMENT = (4, 8)
    DEPORTED_CONFORMANTS = ["Entry"]
    fields_desc = [
        NDRIntField("EntryCount", None, size_of="Entry"),
        NDRConfPacketListField(
            "Entry",
            [],
            ENUM_ENTRY,
            size_is=lambda pkt: pkt.EntryCount,
            conformant_in_struct=True,
        ),
    ]


class ApiCreateEnum_Request(NDRPacket):
    fields_desc = [NDRIntField("dwType", 0)]


class ApiCreateEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenResource_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszResourceName", "")]


class ApiOpenResource_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCreateResource_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszResourceName", ""),
        NDRConfVarStrNullFieldUtf16("lpszResourceType", ""),
        NDRIntField("dwFlags", 0),
    ]


class ApiCreateResource_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiDeleteResource_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiDeleteResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCloseResource_Request(NDRPacket):
    fields_desc = [NDRPacketField("Resource", NDRContextHandle(), NDRContextHandle)]


class ApiCloseResource_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Resource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiGetResourceState_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiGetResourceState_Response(NDRPacket):
    fields_desc = [
        NDRIntField("State", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("NodeName", "")),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("GroupName", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetResourceName_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszResourceName", ""),
    ]


class ApiSetResourceName_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetResourceId_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiGetResourceId_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("pGuid", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetResourceType_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiGetResourceType_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszResourceType", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiFailResource_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiFailResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOnlineResource_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiOnlineResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOfflineResource_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiOfflineResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddResourceDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hDependsOn", NDRContextHandle(), NDRContextHandle),
    ]


class ApiAddResourceDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveResourceDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hDependsOn", NDRContextHandle(), NDRContextHandle),
    ]


class ApiRemoveResourceDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCanResourceBeDependent_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hResourceDependent", NDRContextHandle(), NDRContextHandle),
    ]


class ApiCanResourceBeDependent_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateResEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
    ]


class ApiCreateResEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiAddResourceNode_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
    ]


class ApiAddResourceNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveResourceNode_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
    ]


class ApiRemoveResourceNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiChangeResourceGroup_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
    ]


class ApiChangeResourceGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateResourceType_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszTypeName", ""),
        NDRConfVarStrNullFieldUtf16("lpszDisplayName", ""),
        NDRConfVarStrNullFieldUtf16("lpszDllName", ""),
        NDRIntField("dwLooksAlive", 0),
        NDRIntField("dwIsAlive", 0),
    ]


class ApiCreateResourceType_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiDeleteResourceType_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszTypeName", "")]


class ApiDeleteResourceType_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetRootKey_Request(NDRPacket):
    fields_desc = [NDRIntField("samDesired", 0)]


class ApiGetRootKey_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class RPC_SECURITY_DESCRIPTOR(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRFullPointerField(
            NDRConfVarStrLenField(
                "lpSecurityDescriptor",
                "",
                size_is=lambda pkt: pkt.cbInSecurityDescriptor,
                length_is=lambda pkt: pkt.cbOutSecurityDescriptor,
            ),
            deferred=True,
        ),
        NDRIntField("cbInSecurityDescriptor", None, size_of="lpSecurityDescriptor"),
        NDRIntField("cbOutSecurityDescriptor", None, size_of="lpSecurityDescriptor"),
    ]


class PRPC_SECURITY_ATTRIBUTES(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRIntField("nLength", 0),
        NDRPacketField(
            "RpcSecurityDescriptor", RPC_SECURITY_DESCRIPTOR(), RPC_SECURITY_DESCRIPTOR
        ),
        NDRSignedIntField("bInheritHandle", 0),
    ]


class ApiCreateKey_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpSubKey", ""),
        NDRIntField("dwOptions", 0),
        NDRIntField("samDesired", 0),
        NDRFullPointerField(
            NDRPacketField(
                "lpSecurityAttributes",
                PRPC_SECURITY_ATTRIBUTES(),
                PRPC_SECURITY_ATTRIBUTES,
            )
        ),
    ]


class ApiCreateKey_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwDisposition", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenKey_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpSubKey", ""),
        NDRIntField("samDesired", 0),
    ]


class ApiOpenKey_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class FILETIME(NDRPacket):
    ALIGNMENT = (4, 4)
    fields_desc = [NDRIntField("dwLowDateTime", 0), NDRIntField("dwHighDateTime", 0)]


class ApiEnumKey_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwIndex", 0),
    ]


class ApiEnumKey_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("KeyName", "")),
        NDRPacketField("lpftLastWriteTime", FILETIME(), FILETIME),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetValue_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpValueName", ""),
        NDRIntField("dwType", 0),
        NDRConfStrLenField("lpData", "", size_is=lambda pkt: pkt.cbData),
        NDRIntField("cbData", None, size_of="lpData"),
    ]


class ApiSetValue_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiDeleteValue_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpValueName", ""),
    ]


class ApiDeleteValue_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiQueryValue_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpValueName", ""),
        NDRIntField("cbData", 0),
    ]


class ApiQueryValue_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpValueType", 0),
        NDRConfStrLenField("lpData", "", size_is=lambda pkt: pkt.cbData),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiDeleteKey_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpSubKey", ""),
    ]


class ApiDeleteKey_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiEnumValue_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwIndex", 0),
        NDRIntField("lpcbData", 0),
    ]


class ApiEnumValue_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpValueName", "")),
        NDRIntField("lpType", 0),
        NDRConfStrLenField("lpData", "", size_is=lambda pkt: pkt.lpcbData),
        NDRIntField("lpcbData", None, size_of="lpData"),
        NDRIntField("TotalSize", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiCloseKey_Request(NDRPacket):
    fields_desc = [NDRPacketField("pKey", NDRContextHandle(), NDRContextHandle)]


class ApiCloseKey_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("pKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class PFILETIME(NDRPacket):
    ALIGNMENT = (4, 4)
    fields_desc = [NDRIntField("dwLowDateTime", 0), NDRIntField("dwHighDateTime", 0)]


class ApiQueryInfoKey_Request(NDRPacket):
    fields_desc = [NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle)]


class ApiQueryInfoKey_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpcSubKeys", 0),
        NDRIntField("lpcbMaxSubKeyLen", 0),
        NDRIntField("lpcValues", 0),
        NDRIntField("lpcbMaxValueNameLen", 0),
        NDRIntField("lpcbMaxValueLen", 0),
        NDRIntField("lpcbSecurityDescriptor", 0),
        NDRPacketField("lpftLastWriteTime", PFILETIME(), PFILETIME),
        NDRIntField("rpc_status", 0),
    ]


class PRPC_SECURITY_DESCRIPTOR(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRFullPointerField(
            NDRConfVarStrLenField(
                "lpSecurityDescriptor",
                "",
                size_is=lambda pkt: pkt.cbInSecurityDescriptor,
                length_is=lambda pkt: pkt.cbOutSecurityDescriptor,
            ),
            deferred=True,
        ),
        NDRIntField("cbInSecurityDescriptor", None, size_of="lpSecurityDescriptor"),
        NDRIntField("cbOutSecurityDescriptor", None, size_of="lpSecurityDescriptor"),
    ]


class ApiSetKeySecurity_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("SecurityInformation", 0),
        NDRPacketField(
            "pRpcSecurityDescriptor",
            PRPC_SECURITY_DESCRIPTOR(),
            PRPC_SECURITY_DESCRIPTOR,
        ),
    ]


class ApiSetKeySecurity_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetKeySecurity_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("SecurityInformation", 0),
        NDRPacketField(
            "pRpcSecurityDescriptor",
            PRPC_SECURITY_DESCRIPTOR(),
            PRPC_SECURITY_DESCRIPTOR,
        ),
    ]


class ApiGetKeySecurity_Response(NDRPacket):
    fields_desc = [
        NDRPacketField(
            "pRpcSecurityDescriptor",
            PRPC_SECURITY_DESCRIPTOR(),
            PRPC_SECURITY_DESCRIPTOR,
        ),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenGroup_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszGroupName", "")]


class ApiOpenGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCreateGroup_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszGroupName", "")]


class ApiCreateGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiDeleteGroup_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("Group", NDRContextHandle(), NDRContextHandle),
        NDRSignedIntField("force", 0),
    ]


class ApiDeleteGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCloseGroup_Request(NDRPacket):
    fields_desc = [NDRPacketField("Group", NDRContextHandle(), NDRContextHandle)]


class ApiCloseGroup_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Group", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiGetGroupState_Request(NDRPacket):
    fields_desc = [NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle)]


class ApiGetGroupState_Response(NDRPacket):
    fields_desc = [
        NDRIntField("State", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("NodeName", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetGroupName_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszGroupName", ""),
    ]


class ApiSetGroupName_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetGroupId_Request(NDRPacket):
    fields_desc = [NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle)]


class ApiGetGroupId_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("pGuid", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetNodeId_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle)]


class ApiGetNodeId_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("pGuid", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiOnlineGroup_Request(NDRPacket):
    fields_desc = [NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle)]


class ApiOnlineGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOfflineGroup_Request(NDRPacket):
    fields_desc = [NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle)]


class ApiOfflineGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiMoveGroup_Request(NDRPacket):
    fields_desc = [NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle)]


class ApiMoveGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiMoveGroupToNode_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
    ]


class ApiMoveGroupToNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateGroupResourceEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
    ]


class ApiCreateGroupResourceEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetGroupNodeList_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRConfStrLenFieldUtf16(
            "multiSzNodeList", "", size_is=lambda pkt: pkt.cchListSize
        ),
        NDRIntField("cchListSize", None, size_of="multiSzNodeList"),
    ]


class ApiSetGroupNodeList_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateNotify_Request(NDRPacket):
    fields_desc = []


class ApiCreateNotify_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCloseNotify_Request(NDRPacket):
    fields_desc = [NDRPacketField("Notify", NDRContextHandle(), NDRContextHandle)]


class ApiCloseNotify_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Notify", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiAddNotifyCluster_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyCluster_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddNotifyNode_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyNode_Response(NDRPacket):
    fields_desc = [NDRIntField("dwStateSequence", 0), NDRIntField("rpc_status", 0)]


class ApiAddNotifyGroup_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("dwStateSequence", 0), NDRIntField("rpc_status", 0)]


class ApiAddNotifyResource_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyResource_Response(NDRPacket):
    fields_desc = [NDRIntField("dwStateSequence", 0), NDRIntField("rpc_status", 0)]


class ApiAddNotifyKey_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("Filter", 0),
        NDRSignedIntField("WatchSubTree", 0),
    ]


class ApiAddNotifyKey_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiReAddNotifyNode_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("StateSequence", 0),
    ]


class ApiReAddNotifyNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiReAddNotifyGroup_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("StateSequence", 0),
    ]


class ApiReAddNotifyGroup_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiReAddNotifyResource_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("StateSequence", 0),
    ]


class ApiReAddNotifyResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetNotify_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle)]


class ApiGetNotify_Response(NDRPacket):
    fields_desc = [
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwStateSequence", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenNode_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszNodeName", "")]


class ApiOpenNode_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCloseNode_Request(NDRPacket):
    fields_desc = [NDRPacketField("Node", NDRContextHandle(), NDRContextHandle)]


class ApiCloseNode_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Node", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiGetNodeState_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle)]


class ApiGetNodeState_Response(NDRPacket):
    fields_desc = [NDRIntField("State", 0), NDRIntField("rpc_status", 0)]


class ApiPauseNode_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle)]


class ApiPauseNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiResumeNode_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle)]


class ApiResumeNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiEvictNode_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle)]


class ApiEvictNode_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiNodeResourceControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeResourceControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiResourceControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiResourceControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNodeResourceTypeControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszResourceTypeName", ""),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeResourceTypeControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiResourceTypeControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszResourceTypeName", ""),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiResourceTypeControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNodeGroupControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeGroupControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiGroupControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiGroupControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNodeNodeControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hHostNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeNodeControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNodeControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenNetwork_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszNetworkName", "")]


class ApiOpenNetwork_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCloseNetwork_Request(NDRPacket):
    fields_desc = [NDRPacketField("Network", NDRContextHandle(), NDRContextHandle)]


class ApiCloseNetwork_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("Network", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiGetNetworkState_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle)]


class ApiGetNetworkState_Response(NDRPacket):
    fields_desc = [NDRIntField("State", 0), NDRIntField("rpc_status", 0)]


class ApiSetNetworkName_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRConfVarStrNullFieldUtf16("lpszNetworkName", ""),
    ]


class ApiSetNetworkName_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateNetworkEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
    ]


class ApiCreateNetworkEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetNetworkId_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle)]


class ApiGetNetworkId_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("pGuid", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetNetworkPriorityOrder_Request(NDRPacket):
    fields_desc = [
        NDRIntField("NetworkCount", None, size_of="NetworkIdList"),
        NDRConfVarStrLenFieldUtf16(
            "NetworkIdList", "", size_is=lambda pkt: pkt.NetworkCount
        ),
    ]


class ApiSetNetworkPriorityOrder_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiNodeNetworkControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeNetworkControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNetworkControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNetworkControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiAddNotifyNetwork_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyNetwork_Response(NDRPacket):
    fields_desc = [NDRIntField("dwStateSequence", 0), NDRIntField("rpc_status", 0)]


class ApiReAddNotifyNetwork_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNetwork", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("StateSequence", 0),
    ]


class ApiReAddNotifyNetwork_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOpenNetInterface_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszNetInterfaceName", "")]


class ApiOpenNetInterface_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCloseNetInterface_Request(NDRPacket):
    fields_desc = [NDRPacketField("NetInterface", NDRContextHandle(), NDRContextHandle)]


class ApiCloseNetInterface_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("NetInterface", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiGetNetInterfaceState_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle)
    ]


class ApiGetNetInterfaceState_Response(NDRPacket):
    fields_desc = [NDRIntField("State", 0), NDRIntField("rpc_status", 0)]


class ApiGetNetInterface_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszNodeName", ""),
        NDRConfVarStrNullFieldUtf16("lpszNetworkName", ""),
    ]


class ApiGetNetInterface_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lppszInterfaceName", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetNetInterfaceId_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle)
    ]


class ApiGetNetInterfaceId_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("pGuid", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiNodeNetInterfaceControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeNetInterfaceControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiNetInterfaceControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNetInterfaceControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiAddNotifyNetInterface_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
    ]


class ApiAddNotifyNetInterface_Response(NDRPacket):
    fields_desc = [NDRIntField("dwStateSequence", 0), NDRIntField("rpc_status", 0)]


class ApiReAddNotifyNetInterface_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNetInterface", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFilter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("StateSequence", 0),
    ]


class ApiReAddNotifyNetInterface_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateNodeEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
    ]


class ApiCreateNodeEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class PCLUSTER_OPERATIONAL_VERSION_INFO(NDRPacket):
    ALIGNMENT = (4, 4)
    fields_desc = [
        NDRIntField("dwSize", 0),
        NDRIntField("dwClusterHighestVersion", 0),
        NDRIntField("dwClusterLowestVersion", 0),
        NDRIntField("dwFlags", 0),
        NDRIntField("dwReserved", 0),
    ]


class ApiGetClusterVersion2_Request(NDRPacket):
    fields_desc = []


class ApiGetClusterVersion2_Response(NDRPacket):
    fields_desc = [
        NDRShortField("lpwMajorVersion", 0),
        NDRShortField("lpwMinorVersion", 0),
        NDRShortField("lpwBuildNumber", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszVendorId", "")),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszCSDVersion", "")),
        NDRFullPointerField(
            NDRPacketField(
                "ppClusterOpVerInfo",
                PCLUSTER_OPERATIONAL_VERSION_INFO(),
                PCLUSTER_OPERATIONAL_VERSION_INFO,
            )
        ),
        NDRIntField("rpc_status", 0),
    ]


class ApiCreateResTypeEnum_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszTypeName", ""),
        NDRIntField("dwType", 0),
    ]


class ApiCreateResTypeEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiBackupClusterDatabase_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszPathName", "")]


class ApiBackupClusterDatabase_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiNodeClusterControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hHostNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeClusterControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiClusterControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiClusterControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiUnblockGetNotifyCall_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle)]


class ApiUnblockGetNotifyCall_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class IDL_CLUSTER_SET_PASSWORD_FLAGS(IntEnum):
    IDL_CLUSTER_SET_PASSWORD_IGNORE_DOWN_NODES = 1


class PIDL_CLUSTER_SET_PASSWORD_STATUS(NDRPacket):
    ALIGNMENT = (4, 4)
    fields_desc = [
        NDRIntField("NodeId", 0),
        NDRByteField("SetAttempted", 0),
        NDRIntField("ReturnStatus", 0),
    ]


class ApiSetServiceAccountPassword_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszNewPassword", ""),
        NDRInt3264EnumField("dwFlags", 0, IDL_CLUSTER_SET_PASSWORD_FLAGS),
        NDRIntField("ReturnStatusBufferSize", 0),
    ]


class ApiSetServiceAccountPassword_Response(NDRPacket):
    fields_desc = [
        NDRConfVarPacketListField(
            "ReturnStatusBufferPtr",
            [],
            PIDL_CLUSTER_SET_PASSWORD_STATUS,
            size_is=lambda pkt: pkt.ReturnStatusBufferSize,
            length_is=lambda pkt: pkt.SizeReturned,
            ptr_pack=True,
        ),
        NDRIntField("SizeReturned", None, size_of="ReturnStatusBufferPtr"),
        NDRIntField("ExpectedBufferSize", 0),
        NDRIntField("status", 0),
    ]


class ApiSetResourceDependencyExpression_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRFullPointerField(
            NDRConfVarStrNullFieldUtf16("lpszDependencyExpression", "")
        ),
    ]


class ApiSetResourceDependencyExpression_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiGetResourceDependencyExpression_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiGetResourceDependencyExpression_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(
            NDRConfVarStrNullFieldUtf16("lpszDependencyExpression", "")
        ),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetResourceNetworkName_Request(NDRPacket):
    fields_desc = [NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle)]


class ApiGetResourceNetworkName_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("lpszName", "")),
        NDRIntField("rpc_status", 0),
    ]


class ApiExecuteBatch_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("cbData", None, size_of="lpData"),
        NDRConfStrLenField("lpData", "", size_is=lambda pkt: pkt.cbData),
    ]


class ApiExecuteBatch_Response(NDRPacket):
    fields_desc = [
        NDRSignedIntField("pdwFailedCommand", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiCreateBatchPort_Request(NDRPacket):
    fields_desc = [NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle)]


class ApiCreateBatchPort_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("phBatchPort", NDRContextHandle(), NDRContextHandle),
        NDRIntField("rpc_status", 0),
    ]


class ApiGetBatchNotification_Request(NDRPacket):
    fields_desc = [NDRPacketField("hBatchNotify", NDRContextHandle(), NDRContextHandle)]


class ApiGetBatchNotification_Response(NDRPacket):
    fields_desc = [
        NDRIntField("cbData", None, size_of="lpData"),
        NDRConfStrLenField("lpData", "", size_is=lambda pkt: pkt.cbData),
        NDRIntField("status", 0),
    ]


class ApiCloseBatchPort_Request(NDRPacket):
    fields_desc = [NDRPacketField("phBatchPort", NDRContextHandle(), NDRContextHandle)]


class ApiCloseBatchPort_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("phBatchPort", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiOpenClusterEx_Request(NDRPacket):
    fields_desc = [NDRIntField("dwDesiredAccess", 0)]


class ApiOpenClusterEx_Response(NDRPacket):
    fields_desc = [NDRIntField("lpdwGrantedAccess", 0), NDRIntField("Status", 0)]


class ApiOpenNodeEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszNodeName", ""),
        NDRIntField("dwDesiredAccess", 0),
    ]


class ApiOpenNodeEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwGrantedAccess", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszGroupName", ""),
        NDRIntField("dwDesiredAccess", 0),
    ]


class ApiOpenGroupEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwGrantedAccess", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenResourceEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszResourceName", ""),
        NDRIntField("dwDesiredAccess", 0),
    ]


class ApiOpenResourceEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwGrantedAccess", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenNetworkEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszNetworkName", ""),
        NDRIntField("dwDesiredAccess", 0),
    ]


class ApiOpenNetworkEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwGrantedAccess", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiOpenNetInterfaceEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszNetInterfaceName", ""),
        NDRIntField("dwDesiredAccess", 0),
    ]


class ApiOpenNetInterfaceEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("lpdwGrantedAccess", 0),
        NDRIntField("Status", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiChangeCsvState_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwState", 0),
    ]


class ApiChangeCsvState_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateNodeEnumEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
        NDRIntField("dwOptions", 0),
    ]


class ApiCreateNodeEnumEx_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnIdEnum", PENUM_LIST(), PENUM_LIST)),
        NDRFullPointerField(NDRPacketField("ReturnNameEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiCreateEnumEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwType", 0),
        NDRIntField("dwOptions", 0),
    ]


class ApiCreateEnumEx_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnIdEnum", PENUM_LIST(), PENUM_LIST)),
        NDRFullPointerField(NDRPacketField("ReturnNameEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiPauseNodeEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRSignedIntField("bDrainNode", 0),
        NDRIntField("dwPauseFlags", 0),
    ]


class ApiPauseNodeEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiPauseNodeWithDrainTarget_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwPauseFlags", 0),
        NDRPacketField("hNodeDrainTarget", NDRContextHandle(), NDRContextHandle),
    ]


class ApiPauseNodeWithDrainTarget_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiResumeNodeEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwResumeFailbackType", 0),
        NDRIntField("dwResumeFlagsReserved", 0),
    ]


class ApiResumeNodeEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class PCLUSTER_CREATE_GROUP_INFO_RPC(NDRPacket):
    ALIGNMENT = (4, 4)
    fields_desc = [NDRIntField("dwVersion", 0), NDRIntField("dwGroupType", 0)]


class ApiCreateGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRConfVarStrNullFieldUtf16("lpszGroupName", ""),
        NDRFullPointerField(
            NDRPacketField(
                "pGroupInfo",
                PCLUSTER_CREATE_GROUP_INFO_RPC(),
                PCLUSTER_CREATE_GROUP_INFO_RPC,
            )
        ),
    ]


class ApiCreateGroupEx_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiOnlineGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwOnlineFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiOnlineGroupEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOfflineGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwOfflineFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiOfflineGroupEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiMoveGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwMoveFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiMoveGroupEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiMoveGroupToNodeEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwMoveFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiMoveGroupToNodeEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCancelClusterGroupOperation_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwCancelFlags", 0),
    ]


class ApiCancelClusterGroupOperation_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOnlineResourceEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwOnlineFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiOnlineResourceEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiOfflineResourceEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwOfflineFlags", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.cbInBufferSize),
        NDRIntField("cbInBufferSize", None, size_of="lpInBuffer"),
    ]


class ApiOfflineResourceEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateNotifyV2_Request(NDRPacket):
    fields_desc = []


class ApiCreateNotifyV2_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_error", 0), NDRIntField("rpc_status", 0)]


class NOTIFY_FILTER_AND_TYPE_RPC(NDRPacket):
    ALIGNMENT = (8, 8)
    fields_desc = [NDRIntField("dwObjectType", 0), NDRSignedLongField("FilterFlags", 0)]


class ApiAddNotifyV2_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hObject", NDRContextHandle(), NDRContextHandle),
        NDRPacketField(
            "filter", NOTIFY_FILTER_AND_TYPE_RPC(), NOTIFY_FILTER_AND_TYPE_RPC
        ),
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("dwVersion", 0),
        NDRSignedIntField("isTargetedAtObject", 0),
    ]


class ApiAddNotifyV2_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class NOTIFICATION_DATA_RPC(NDRPacket):
    ALIGNMENT = (8, 8)
    fields_desc = [
        NDRPacketField(
            "FilterAndType", NOTIFY_FILTER_AND_TYPE_RPC(), NOTIFY_FILTER_AND_TYPE_RPC
        ),
        NDRFullPointerField(
            NDRConfStrLenField("buffer", "", size_is=lambda pkt: pkt.dwBufferSize),
            deferred=True,
        ),
        NDRIntField("dwBufferSize", None, size_of="buffer"),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("ObjectId", ""), deferred=True),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("ParentId", ""), deferred=True),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", ""), deferred=True),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Type", ""), deferred=True),
    ]


class PNOTIFICATION_RPC(NDRPacket):
    ALIGNMENT = (8, 8)
    fields_desc = [
        NDRInt3264Field("dwNotifyKey", 0),
        NDRPacketField(
            "NotificationData", NOTIFICATION_DATA_RPC(), NOTIFICATION_DATA_RPC
        ),
    ]


class ApiGetNotifyV2_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle)]


class ApiGetNotifyV2_Response(NDRPacket):
    fields_desc = [
        NDRConfPacketListField(
            "Notifications",
            [],
            PNOTIFICATION_RPC,
            size_is=lambda pkt: pkt.dwNumNotifications,
            ptr_pack=True,
        ),
        NDRIntField("dwNumNotifications", None, size_of="Notifications"),
        NDRIntField("status", 0),
    ]


class GROUP_ENUM_ENTRY(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", ""), deferred=True),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Id", ""), deferred=True),
        NDRIntField("dwState", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Owner", ""), deferred=True),
        NDRIntField("dwFlags", 0),
        NDRIntField("cbProperties", None, size_of="Properties"),
        NDRFullPointerField(
            NDRConfStrLenField("Properties", "", size_is=lambda pkt: pkt.cbProperties),
            deferred=True,
        ),
        NDRIntField("cbRoProperties", None, size_of="RoProperties"),
        NDRFullPointerField(
            NDRConfStrLenField(
                "RoProperties", "", size_is=lambda pkt: pkt.cbRoProperties
            ),
            deferred=True,
        ),
    ]


class PGROUP_ENUM_LIST(NDRPacket):
    ALIGNMENT = (4, 8)
    DEPORTED_CONFORMANTS = ["Entry"]
    fields_desc = [
        NDRIntField("EntryCount", None, size_of="Entry"),
        NDRConfPacketListField(
            "Entry",
            [],
            GROUP_ENUM_ENTRY,
            size_is=lambda pkt: pkt.EntryCount,
            conformant_in_struct=True,
        ),
    ]


class ApiCreateGroupEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRConfStrLenField("pProperties", "", size_is=lambda pkt: pkt.cbProperties),
        NDRIntField("cbProperties", None, size_of="pProperties"),
        NDRConfStrLenField("pRoProperties", "", size_is=lambda pkt: pkt.cbRoProperties),
        NDRIntField("cbRoProperties", None, size_of="pRoProperties"),
    ]


class ApiCreateGroupEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(
            NDRPacketField("ppResultList", PGROUP_ENUM_LIST(), PGROUP_ENUM_LIST)
        ),
        NDRIntField("rpc_status", 0),
    ]


class RESOURCE_ENUM_ENTRY(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", ""), deferred=True),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Id", ""), deferred=True),
        NDRFullPointerField(
            NDRConfVarStrNullFieldUtf16("OwnerName", ""), deferred=True
        ),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("OwnerId", ""), deferred=True),
        NDRIntField("cbProperties", None, size_of="Properties"),
        NDRFullPointerField(
            NDRConfStrLenField("Properties", "", size_is=lambda pkt: pkt.cbProperties),
            deferred=True,
        ),
        NDRIntField("cbRoProperties", None, size_of="RoProperties"),
        NDRFullPointerField(
            NDRConfStrLenField(
                "RoProperties", "", size_is=lambda pkt: pkt.cbRoProperties
            ),
            deferred=True,
        ),
    ]


class PRESOURCE_ENUM_LIST(NDRPacket):
    ALIGNMENT = (4, 8)
    DEPORTED_CONFORMANTS = ["Entry"]
    fields_desc = [
        NDRIntField("EntryCount", None, size_of="Entry"),
        NDRConfPacketListField(
            "Entry",
            [],
            RESOURCE_ENUM_ENTRY,
            size_is=lambda pkt: pkt.EntryCount,
            conformant_in_struct=True,
        ),
    ]


class ApiCreateResourceEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRConfStrLenField("pProperties", "", size_is=lambda pkt: pkt.cbProperties),
        NDRIntField("cbProperties", None, size_of="pProperties"),
        NDRConfStrLenField("pRoProperties", "", size_is=lambda pkt: pkt.cbRoProperties),
        NDRIntField("cbRoProperties", None, size_of="pRoProperties"),
    ]


class ApiCreateResourceEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(
            NDRPacketField("ppResultList", PRESOURCE_ENUM_LIST(), PRESOURCE_ENUM_LIST)
        ),
        NDRIntField("rpc_status", 0),
    ]


class ApiExecuteReadBatch_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("cbInData", None, size_of="lpInData"),
        NDRConfStrLenField("lpInData", "", size_is=lambda pkt: pkt.cbInData),
    ]


class ApiExecuteReadBatch_Response(NDRPacket):
    fields_desc = [
        NDRIntField("cbOutData", None, size_of="lpOutData"),
        NDRConfStrLenField("lpOutData", "", size_is=lambda pkt: pkt.cbOutData),
        NDRIntField("rpc_status", 0),
    ]


class ApiRestartResource_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwFlags", 0),
    ]


class ApiRestartResource_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class PNOTIFICATION_DATA_ASYNC_RPC(NDRPacket):
    ALIGNMENT = (4, 8)
    fields_desc = [
        NDRIntField("dwNotifyKey", 0),
        NDRIntField("dwFilter", 0),
        NDRFullPointerField(NDRConfVarStrNullFieldUtf16("Name", ""), deferred=True),
    ]


class ApiGetNotifyAsync_Request(NDRPacket):
    fields_desc = [NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle)]


class ApiGetNotifyAsync_Response(NDRPacket):
    fields_desc = [
        NDRConfPacketListField(
            "Notifications",
            [],
            PNOTIFICATION_DATA_ASYNC_RPC,
            size_is=lambda pkt: pkt.dwNumNotifications,
            ptr_pack=True,
        ),
        NDRIntField("dwNumNotifications", None, size_of="Notifications"),
        NDRIntField("status", 0),
    ]


class Opnum149otUsedOnWire_Request(NDRPacket):
    fields_desc = []


class Opnum149otUsedOnWire_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class ApiAddNotifyResourceTypeV2_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hNotify", NDRContextHandle(), NDRContextHandle),
        NDRSignedLongField("filter", 0),
        NDRIntField("dwNotifyKey", 0),
        NDRShortField("resTypeName", 0),
        NDRIntField("dwVersion", 0),
    ]


class ApiAddNotifyResourceTypeV2_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiExecuteReadBatchEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hKey", NDRContextHandle(), NDRContextHandle),
        NDRIntField("cbInData", None, size_of="lpInData"),
        NDRConfStrLenField("lpInData", "", size_is=lambda pkt: pkt.cbInData),
        NDRIntField("flags", 0),
    ]


class ApiExecuteReadBatchEx_Response(NDRPacket):
    fields_desc = [
        NDRIntField("cbOutData", None, size_of="lpOutData"),
        NDRConfStrLenField("lpOutData", "", size_is=lambda pkt: pkt.cbOutData),
        NDRIntField("rpc_status", 0),
    ]


class ApiCreateGroupSet_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszGroupSetName", "")]


class ApiCreateGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiOpenGroupSet_Request(NDRPacket):
    fields_desc = [NDRConfVarStrNullFieldUtf16("lpszGroupSetName", "")]


class ApiOpenGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("Status", 0), NDRIntField("rpc_status", 0)]


class ApiCloseGroupSet_Request(NDRPacket):
    fields_desc = [NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle)]


class ApiCloseGroupSet_Response(NDRPacket):
    fields_desc = [
        NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle),
        NDRIntField("status", 0),
    ]


class ApiDeleteGroupSet_Request(NDRPacket):
    fields_desc = [NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle)]


class ApiDeleteGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddGroupToGroupSet_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("Group", NDRContextHandle(), NDRContextHandle),
    ]


class ApiAddGroupToGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveGroupFromGroupSet_Request(NDRPacket):
    fields_desc = [NDRPacketField("Group", NDRContextHandle(), NDRContextHandle)]


class ApiRemoveGroupFromGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiMoveGroupToGroupSet_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("Group", NDRContextHandle(), NDRContextHandle),
    ]


class ApiMoveGroupToGroupSet_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddGroupSetDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("DependentGroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("ProviderGroupSet", NDRContextHandle(), NDRContextHandle),
    ]


class ApiAddGroupSetDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddGroupToGroupSetDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("DependentGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("ProviderGroupSet", NDRContextHandle(), NDRContextHandle),
    ]


class ApiAddGroupToGroupSetDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiNodeGroupSetControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hNode", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiNodeGroupSetControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiGroupSetControl_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroupSet", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwControlCode", 0),
        NDRConfStrLenField("lpInBuffer", "", size_is=lambda pkt: pkt.nInBufferSize),
        NDRIntField("nInBufferSize", None, size_of="lpInBuffer"),
        NDRIntField("nOutBufferSize", 0),
    ]


class ApiGroupSetControl_Response(NDRPacket):
    fields_desc = [
        NDRConfVarStrLenField(
            "lpOutBuffer",
            "",
            size_is=lambda pkt: pkt.nOutBufferSize,
            length_is=lambda pkt: pkt.lpBytesReturned,
        ),
        NDRIntField("lpBytesReturned", None, size_of="lpOutBuffer"),
        NDRIntField("lpcbRequired", 0),
        NDRIntField("rpc_status", 0),
    ]


class ApiSetGroupDependencyExpression_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRShortField("lpszDependencyExpression", 0),
    ]


class ApiSetGroupDependencyExpression_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveClusterGroupDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hDependsOn", NDRContextHandle(), NDRContextHandle),
    ]


class ApiRemoveClusterGroupDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiSetGroupSetDependencyExpression_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroupSet", NDRContextHandle(), NDRContextHandle),
        NDRShortField("lpszDependencyExpression", 0),
    ]


class ApiSetGroupSetDependencyExpression_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveGroupSetDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hDependsOn", NDRContextHandle(), NDRContextHandle),
    ]


class ApiRemoveGroupSetDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiRemoveClusterGroupToGroupSetDependency_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hDependsOn", NDRContextHandle(), NDRContextHandle),
    ]


class ApiRemoveClusterGroupToGroupSetDependency_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiCreateGroupSetEnum_Request(NDRPacket):
    fields_desc = [NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle)]


class ApiCreateGroupSetEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiCreateNetInterfaceEnum_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hCluster", NDRContextHandle(), NDRContextHandle),
        NDRShortField("lpszNodeName", 0),
        NDRShortField("lpszNetworkName", 0),
    ]


class ApiCreateNetInterfaceEnum_Response(NDRPacket):
    fields_desc = [
        NDRFullPointerField(NDRPacketField("ReturnEnum", PENUM_LIST(), PENUM_LIST)),
        NDRIntField("rpc_status", 0),
    ]


class ApiChangeCsvStateEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRIntField("dwState", 0),
        NDRConfVarStrNullFieldUtf16("lpszVolumeName", ""),
    ]


class ApiChangeCsvStateEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiAddGroupToGroupSetEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("GroupSet", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("Group", NDRContextHandle(), NDRContextHandle),
        NDRIntField("FaultDomain", 0),
        NDRIntField("UpdateDomain", 0),
        NDRSignedIntField("UseDomains", 0),
        NDRIntField("Reserved", 0),
    ]


class ApiAddGroupToGroupSetEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class ApiChangeResourceGroupEx_Request(NDRPacket):
    fields_desc = [
        NDRPacketField("hResource", NDRContextHandle(), NDRContextHandle),
        NDRPacketField("hGroup", NDRContextHandle(), NDRContextHandle),
        NDRLongField("flags", 0),
    ]


class ApiChangeResourceGroupEx_Response(NDRPacket):
    fields_desc = [NDRIntField("rpc_status", 0)]


class Opnum185Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum185Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum186Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum186Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum187Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum187Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum188Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum188Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum189Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum189Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum190Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum190Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum191Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum191Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum192Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum192Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum193Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum193Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum194Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum194Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum195Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum195Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum196Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum196Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum197Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum197Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum198Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum198Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum199Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum199Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum200Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum200Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum201Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum201Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum202Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum202Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum203Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum203Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum204Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum204Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum205Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum205Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum206Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum206Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum207Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum207Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum208Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum208Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum209Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum209Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum210Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum210Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum211Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum211Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum212Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum212Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum213Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum213Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum214Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum214Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum215Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum215Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum216Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum216Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum217Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum217Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum218Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum218Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum219Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum219Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum220Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum220Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum221Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum221Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum222Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum222Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum223Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum223Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum224Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum224Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum225Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum225Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum226Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum226Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum227Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum227Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum228Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum228Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum229Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum229Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum230Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum230Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum231Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum231Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum232Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum232Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum233Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum233Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum234Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum234Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum235Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum235Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum236Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum236Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum237Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum237Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum238Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum238Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum239Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum239Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum240Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum240Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum241Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum241Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum242Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum242Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum243Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum243Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum244Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum244Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum245Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum245Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum246Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum246Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum247Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum247Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum248Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum248Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum249Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum249Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum250Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum250Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum251Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum251Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum252Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum252Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum253Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum253Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum254Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum254Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum255Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum255Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum256Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum256Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum257Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum257Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum258Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum258Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum259Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum259Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum260Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum260Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum261Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum261Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum262Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum262Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


class Opnum263Reserved_Request(NDRPacket):
    fields_desc = []


class Opnum263Reserved_Response(NDRPacket):
    fields_desc = [NDRIntField("status", 0)]


CLUSAPI_OPNUMS = {
    0: DceRpcOp(ApiOpenCluster_Request, ApiOpenCluster_Response),
    1: DceRpcOp(ApiCloseCluster_Request, ApiCloseCluster_Response),
    2: DceRpcOp(ApiSetClusterName_Request, ApiSetClusterName_Response),
    3: DceRpcOp(ApiGetClusterName_Request, ApiGetClusterName_Response),
    4: DceRpcOp(ApiGetClusterVersion_Request, ApiGetClusterVersion_Response),
    5: DceRpcOp(ApiGetQuorumResource_Request, ApiGetQuorumResource_Response),
    6: DceRpcOp(ApiSetQuorumResource_Request, ApiSetQuorumResource_Response),
    7: DceRpcOp(ApiCreateEnum_Request, ApiCreateEnum_Response),
    8: DceRpcOp(ApiOpenResource_Request, ApiOpenResource_Response),
    9: DceRpcOp(ApiCreateResource_Request, ApiCreateResource_Response),
    10: DceRpcOp(ApiDeleteResource_Request, ApiDeleteResource_Response),
    11: DceRpcOp(ApiCloseResource_Request, ApiCloseResource_Response),
    12: DceRpcOp(ApiGetResourceState_Request, ApiGetResourceState_Response),
    13: DceRpcOp(ApiSetResourceName_Request, ApiSetResourceName_Response),
    14: DceRpcOp(ApiGetResourceId_Request, ApiGetResourceId_Response),
    15: DceRpcOp(ApiGetResourceType_Request, ApiGetResourceType_Response),
    16: DceRpcOp(ApiFailResource_Request, ApiFailResource_Response),
    17: DceRpcOp(ApiOnlineResource_Request, ApiOnlineResource_Response),
    18: DceRpcOp(ApiOfflineResource_Request, ApiOfflineResource_Response),
    19: DceRpcOp(ApiAddResourceDependency_Request, ApiAddResourceDependency_Response),
    20: DceRpcOp(
        ApiRemoveResourceDependency_Request, ApiRemoveResourceDependency_Response
    ),
    21: DceRpcOp(ApiCanResourceBeDependent_Request, ApiCanResourceBeDependent_Response),
    22: DceRpcOp(ApiCreateResEnum_Request, ApiCreateResEnum_Response),
    23: DceRpcOp(ApiAddResourceNode_Request, ApiAddResourceNode_Response),
    24: DceRpcOp(ApiRemoveResourceNode_Request, ApiRemoveResourceNode_Response),
    25: DceRpcOp(ApiChangeResourceGroup_Request, ApiChangeResourceGroup_Response),
    26: DceRpcOp(ApiCreateResourceType_Request, ApiCreateResourceType_Response),
    27: DceRpcOp(ApiDeleteResourceType_Request, ApiDeleteResourceType_Response),
    28: DceRpcOp(ApiGetRootKey_Request, ApiGetRootKey_Response),
    29: DceRpcOp(ApiCreateKey_Request, ApiCreateKey_Response),
    30: DceRpcOp(ApiOpenKey_Request, ApiOpenKey_Response),
    31: DceRpcOp(ApiEnumKey_Request, ApiEnumKey_Response),
    32: DceRpcOp(ApiSetValue_Request, ApiSetValue_Response),
    33: DceRpcOp(ApiDeleteValue_Request, ApiDeleteValue_Response),
    34: DceRpcOp(ApiQueryValue_Request, ApiQueryValue_Response),
    35: DceRpcOp(ApiDeleteKey_Request, ApiDeleteKey_Response),
    36: DceRpcOp(ApiEnumValue_Request, ApiEnumValue_Response),
    37: DceRpcOp(ApiCloseKey_Request, ApiCloseKey_Response),
    38: DceRpcOp(ApiQueryInfoKey_Request, ApiQueryInfoKey_Response),
    39: DceRpcOp(ApiSetKeySecurity_Request, ApiSetKeySecurity_Response),
    40: DceRpcOp(ApiGetKeySecurity_Request, ApiGetKeySecurity_Response),
    41: DceRpcOp(ApiOpenGroup_Request, ApiOpenGroup_Response),
    42: DceRpcOp(ApiCreateGroup_Request, ApiCreateGroup_Response),
    43: DceRpcOp(ApiDeleteGroup_Request, ApiDeleteGroup_Response),
    44: DceRpcOp(ApiCloseGroup_Request, ApiCloseGroup_Response),
    45: DceRpcOp(ApiGetGroupState_Request, ApiGetGroupState_Response),
    46: DceRpcOp(ApiSetGroupName_Request, ApiSetGroupName_Response),
    47: DceRpcOp(ApiGetGroupId_Request, ApiGetGroupId_Response),
    48: DceRpcOp(ApiGetNodeId_Request, ApiGetNodeId_Response),
    49: DceRpcOp(ApiOnlineGroup_Request, ApiOnlineGroup_Response),
    50: DceRpcOp(ApiOfflineGroup_Request, ApiOfflineGroup_Response),
    51: DceRpcOp(ApiMoveGroup_Request, ApiMoveGroup_Response),
    52: DceRpcOp(ApiMoveGroupToNode_Request, ApiMoveGroupToNode_Response),
    53: DceRpcOp(
        ApiCreateGroupResourceEnum_Request, ApiCreateGroupResourceEnum_Response
    ),
    54: DceRpcOp(ApiSetGroupNodeList_Request, ApiSetGroupNodeList_Response),
    55: DceRpcOp(ApiCreateNotify_Request, ApiCreateNotify_Response),
    56: DceRpcOp(ApiCloseNotify_Request, ApiCloseNotify_Response),
    57: DceRpcOp(ApiAddNotifyCluster_Request, ApiAddNotifyCluster_Response),
    58: DceRpcOp(ApiAddNotifyNode_Request, ApiAddNotifyNode_Response),
    59: DceRpcOp(ApiAddNotifyGroup_Request, ApiAddNotifyGroup_Response),
    60: DceRpcOp(ApiAddNotifyResource_Request, ApiAddNotifyResource_Response),
    61: DceRpcOp(ApiAddNotifyKey_Request, ApiAddNotifyKey_Response),
    62: DceRpcOp(ApiReAddNotifyNode_Request, ApiReAddNotifyNode_Response),
    63: DceRpcOp(ApiReAddNotifyGroup_Request, ApiReAddNotifyGroup_Response),
    64: DceRpcOp(ApiReAddNotifyResource_Request, ApiReAddNotifyResource_Response),
    65: DceRpcOp(ApiGetNotify_Request, ApiGetNotify_Response),
    66: DceRpcOp(ApiOpenNode_Request, ApiOpenNode_Response),
    67: DceRpcOp(ApiCloseNode_Request, ApiCloseNode_Response),
    68: DceRpcOp(ApiGetNodeState_Request, ApiGetNodeState_Response),
    69: DceRpcOp(ApiPauseNode_Request, ApiPauseNode_Response),
    70: DceRpcOp(ApiResumeNode_Request, ApiResumeNode_Response),
    71: DceRpcOp(ApiEvictNode_Request, ApiEvictNode_Response),
    72: DceRpcOp(ApiNodeResourceControl_Request, ApiNodeResourceControl_Response),
    73: DceRpcOp(ApiResourceControl_Request, ApiResourceControl_Response),
    74: DceRpcOp(
        ApiNodeResourceTypeControl_Request, ApiNodeResourceTypeControl_Response
    ),
    75: DceRpcOp(ApiResourceTypeControl_Request, ApiResourceTypeControl_Response),
    76: DceRpcOp(ApiNodeGroupControl_Request, ApiNodeGroupControl_Response),
    77: DceRpcOp(ApiGroupControl_Request, ApiGroupControl_Response),
    78: DceRpcOp(ApiNodeNodeControl_Request, ApiNodeNodeControl_Response),
    79: DceRpcOp(ApiNodeControl_Request, ApiNodeControl_Response),
    # 80: Opnum80NotUsedOnWire,
    81: DceRpcOp(ApiOpenNetwork_Request, ApiOpenNetwork_Response),
    82: DceRpcOp(ApiCloseNetwork_Request, ApiCloseNetwork_Response),
    83: DceRpcOp(ApiGetNetworkState_Request, ApiGetNetworkState_Response),
    84: DceRpcOp(ApiSetNetworkName_Request, ApiSetNetworkName_Response),
    85: DceRpcOp(ApiCreateNetworkEnum_Request, ApiCreateNetworkEnum_Response),
    86: DceRpcOp(ApiGetNetworkId_Request, ApiGetNetworkId_Response),
    87: DceRpcOp(
        ApiSetNetworkPriorityOrder_Request, ApiSetNetworkPriorityOrder_Response
    ),
    88: DceRpcOp(ApiNodeNetworkControl_Request, ApiNodeNetworkControl_Response),
    89: DceRpcOp(ApiNetworkControl_Request, ApiNetworkControl_Response),
    90: DceRpcOp(ApiAddNotifyNetwork_Request, ApiAddNotifyNetwork_Response),
    91: DceRpcOp(ApiReAddNotifyNetwork_Request, ApiReAddNotifyNetwork_Response),
    92: DceRpcOp(ApiOpenNetInterface_Request, ApiOpenNetInterface_Response),
    93: DceRpcOp(ApiCloseNetInterface_Request, ApiCloseNetInterface_Response),
    94: DceRpcOp(ApiGetNetInterfaceState_Request, ApiGetNetInterfaceState_Response),
    95: DceRpcOp(ApiGetNetInterface_Request, ApiGetNetInterface_Response),
    96: DceRpcOp(ApiGetNetInterfaceId_Request, ApiGetNetInterfaceId_Response),
    97: DceRpcOp(
        ApiNodeNetInterfaceControl_Request, ApiNodeNetInterfaceControl_Response
    ),
    98: DceRpcOp(ApiNetInterfaceControl_Request, ApiNetInterfaceControl_Response),
    99: DceRpcOp(ApiAddNotifyNetInterface_Request, ApiAddNotifyNetInterface_Response),
    100: DceRpcOp(
        ApiReAddNotifyNetInterface_Request, ApiReAddNotifyNetInterface_Response
    ),
    101: DceRpcOp(ApiCreateNodeEnum_Request, ApiCreateNodeEnum_Response),
    102: DceRpcOp(ApiGetClusterVersion2_Request, ApiGetClusterVersion2_Response),
    103: DceRpcOp(ApiCreateResTypeEnum_Request, ApiCreateResTypeEnum_Response),
    104: DceRpcOp(ApiBackupClusterDatabase_Request, ApiBackupClusterDatabase_Response),
    105: DceRpcOp(ApiNodeClusterControl_Request, ApiNodeClusterControl_Response),
    106: DceRpcOp(ApiClusterControl_Request, ApiClusterControl_Response),
    107: DceRpcOp(ApiUnblockGetNotifyCall_Request, ApiUnblockGetNotifyCall_Response),
    108: DceRpcOp(
        ApiSetServiceAccountPassword_Request, ApiSetServiceAccountPassword_Response
    ),
    109: DceRpcOp(
        ApiSetResourceDependencyExpression_Request,
        ApiSetResourceDependencyExpression_Response,
    ),
    110: DceRpcOp(
        ApiGetResourceDependencyExpression_Request,
        ApiGetResourceDependencyExpression_Response,
    ),
    # 111: Opnum111NotUsedOnWire,
    112: DceRpcOp(
        ApiGetResourceNetworkName_Request, ApiGetResourceNetworkName_Response
    ),
    113: DceRpcOp(ApiExecuteBatch_Request, ApiExecuteBatch_Response),
    114: DceRpcOp(ApiCreateBatchPort_Request, ApiCreateBatchPort_Response),
    115: DceRpcOp(ApiGetBatchNotification_Request, ApiGetBatchNotification_Response),
    116: DceRpcOp(ApiCloseBatchPort_Request, ApiCloseBatchPort_Response),
    117: DceRpcOp(ApiOpenClusterEx_Request, ApiOpenClusterEx_Response),
    118: DceRpcOp(ApiOpenNodeEx_Request, ApiOpenNodeEx_Response),
    119: DceRpcOp(ApiOpenGroupEx_Request, ApiOpenGroupEx_Response),
    120: DceRpcOp(ApiOpenResourceEx_Request, ApiOpenResourceEx_Response),
    121: DceRpcOp(ApiOpenNetworkEx_Request, ApiOpenNetworkEx_Response),
    122: DceRpcOp(ApiOpenNetInterfaceEx_Request, ApiOpenNetInterfaceEx_Response),
    123: DceRpcOp(ApiChangeCsvState_Request, ApiChangeCsvState_Response),
    124: DceRpcOp(ApiCreateNodeEnumEx_Request, ApiCreateNodeEnumEx_Response),
    125: DceRpcOp(ApiCreateEnumEx_Request, ApiCreateEnumEx_Response),
    126: DceRpcOp(ApiPauseNodeEx_Request, ApiPauseNodeEx_Response),
    127: DceRpcOp(
        ApiPauseNodeWithDrainTarget_Request, ApiPauseNodeWithDrainTarget_Response
    ),
    128: DceRpcOp(ApiResumeNodeEx_Request, ApiResumeNodeEx_Response),
    129: DceRpcOp(ApiCreateGroupEx_Request, ApiCreateGroupEx_Response),
    130: DceRpcOp(ApiOnlineGroupEx_Request, ApiOnlineGroupEx_Response),
    131: DceRpcOp(ApiOfflineGroupEx_Request, ApiOfflineGroupEx_Response),
    132: DceRpcOp(ApiMoveGroupEx_Request, ApiMoveGroupEx_Response),
    133: DceRpcOp(ApiMoveGroupToNodeEx_Request, ApiMoveGroupToNodeEx_Response),
    134: DceRpcOp(
        ApiCancelClusterGroupOperation_Request, ApiCancelClusterGroupOperation_Response
    ),
    135: DceRpcOp(ApiOnlineResourceEx_Request, ApiOnlineResourceEx_Response),
    136: DceRpcOp(ApiOfflineResourceEx_Request, ApiOfflineResourceEx_Response),
    137: DceRpcOp(ApiCreateNotifyV2_Request, ApiCreateNotifyV2_Response),
    138: DceRpcOp(ApiAddNotifyV2_Request, ApiAddNotifyV2_Response),
    139: DceRpcOp(ApiGetNotifyV2_Request, ApiGetNotifyV2_Response),
    # 140: Opnum140NotUsedOnWire,
    # 141: Opnum141NotUsedOnWire,
    # 142: Opnum142NotUsedOnWire,
    143: DceRpcOp(ApiCreateGroupEnum_Request, ApiCreateGroupEnum_Response),
    144: DceRpcOp(ApiCreateResourceEnum_Request, ApiCreateResourceEnum_Response),
    145: DceRpcOp(ApiExecuteReadBatch_Request, ApiExecuteReadBatch_Response),
    146: DceRpcOp(ApiRestartResource_Request, ApiRestartResource_Response),
    147: DceRpcOp(ApiGetNotifyAsync_Request, ApiGetNotifyAsync_Response),
    # 148: Opnum148NotUsedOnWire,
    149: DceRpcOp(Opnum149otUsedOnWire_Request, Opnum149otUsedOnWire_Response),
    # 150: Opnum150NotUsedOnWire,
    # 151: Opnum151NotUsedOnWire,
    # 152: Opnum152NotUsedOnWire,
    # 153: Opnum153NotUsedOnWire,
    # 154: Opnum154NotUsedOnWire,
    155: DceRpcOp(
        ApiAddNotifyResourceTypeV2_Request, ApiAddNotifyResourceTypeV2_Response
    ),
    # 156: Opnum156NotUsedOnWire,
    157: DceRpcOp(ApiExecuteReadBatchEx_Request, ApiExecuteReadBatchEx_Response),
    # 158: Opnum158NotUsedOnWire,
    # 159: Opnum159NotUsedOnWire,
    # 160: Opnum160NotUsedOnWire,
    # 161: Opnum161NotUsedOnWire,
    # 162: Opnum162NotUsedOnWire,
    163: DceRpcOp(ApiCreateGroupSet_Request, ApiCreateGroupSet_Response),
    164: DceRpcOp(ApiOpenGroupSet_Request, ApiOpenGroupSet_Response),
    165: DceRpcOp(ApiCloseGroupSet_Request, ApiCloseGroupSet_Response),
    166: DceRpcOp(ApiDeleteGroupSet_Request, ApiDeleteGroupSet_Response),
    167: DceRpcOp(ApiAddGroupToGroupSet_Request, ApiAddGroupToGroupSet_Response),
    168: DceRpcOp(
        ApiRemoveGroupFromGroupSet_Request, ApiRemoveGroupFromGroupSet_Response
    ),
    169: DceRpcOp(ApiMoveGroupToGroupSet_Request, ApiMoveGroupToGroupSet_Response),
    # 170: Opnum170NotUsedOnWire,
    171: DceRpcOp(ApiAddGroupSetDependency_Request, ApiAddGroupSetDependency_Response),
    172: DceRpcOp(
        ApiAddGroupToGroupSetDependency_Request,
        ApiAddGroupToGroupSetDependency_Response,
    ),
    173: DceRpcOp(ApiNodeGroupSetControl_Request, ApiNodeGroupSetControl_Response),
    174: DceRpcOp(ApiGroupSetControl_Request, ApiGroupSetControl_Response),
    175: DceRpcOp(
        ApiSetGroupDependencyExpression_Request,
        ApiSetGroupDependencyExpression_Response,
    ),
    176: DceRpcOp(
        ApiRemoveClusterGroupDependency_Request,
        ApiRemoveClusterGroupDependency_Response,
    ),
    177: DceRpcOp(
        ApiSetGroupSetDependencyExpression_Request,
        ApiSetGroupSetDependencyExpression_Response,
    ),
    178: DceRpcOp(
        ApiRemoveGroupSetDependency_Request, ApiRemoveGroupSetDependency_Response
    ),
    179: DceRpcOp(
        ApiRemoveClusterGroupToGroupSetDependency_Request,
        ApiRemoveClusterGroupToGroupSetDependency_Response,
    ),
    180: DceRpcOp(ApiCreateGroupSetEnum_Request, ApiCreateGroupSetEnum_Response),
    181: DceRpcOp(
        ApiCreateNetInterfaceEnum_Request, ApiCreateNetInterfaceEnum_Response
    ),
    182: DceRpcOp(ApiChangeCsvStateEx_Request, ApiChangeCsvStateEx_Response),
    183: DceRpcOp(ApiAddGroupToGroupSetEx_Request, ApiAddGroupToGroupSetEx_Response),
    184: DceRpcOp(ApiChangeResourceGroupEx_Request, ApiChangeResourceGroupEx_Response),
    185: DceRpcOp(Opnum185Reserved_Request, Opnum185Reserved_Response),
    186: DceRpcOp(Opnum186Reserved_Request, Opnum186Reserved_Response),
    187: DceRpcOp(Opnum187Reserved_Request, Opnum187Reserved_Response),
    188: DceRpcOp(Opnum188Reserved_Request, Opnum188Reserved_Response),
    189: DceRpcOp(Opnum189Reserved_Request, Opnum189Reserved_Response),
    190: DceRpcOp(Opnum190Reserved_Request, Opnum190Reserved_Response),
    191: DceRpcOp(Opnum191Reserved_Request, Opnum191Reserved_Response),
    192: DceRpcOp(Opnum192Reserved_Request, Opnum192Reserved_Response),
    193: DceRpcOp(Opnum193Reserved_Request, Opnum193Reserved_Response),
    194: DceRpcOp(Opnum194Reserved_Request, Opnum194Reserved_Response),
    195: DceRpcOp(Opnum195Reserved_Request, Opnum195Reserved_Response),
    196: DceRpcOp(Opnum196Reserved_Request, Opnum196Reserved_Response),
    197: DceRpcOp(Opnum197Reserved_Request, Opnum197Reserved_Response),
    198: DceRpcOp(Opnum198Reserved_Request, Opnum198Reserved_Response),
    199: DceRpcOp(Opnum199Reserved_Request, Opnum199Reserved_Response),
    200: DceRpcOp(Opnum200Reserved_Request, Opnum200Reserved_Response),
    201: DceRpcOp(Opnum201Reserved_Request, Opnum201Reserved_Response),
    202: DceRpcOp(Opnum202Reserved_Request, Opnum202Reserved_Response),
    203: DceRpcOp(Opnum203Reserved_Request, Opnum203Reserved_Response),
    204: DceRpcOp(Opnum204Reserved_Request, Opnum204Reserved_Response),
    205: DceRpcOp(Opnum205Reserved_Request, Opnum205Reserved_Response),
    206: DceRpcOp(Opnum206Reserved_Request, Opnum206Reserved_Response),
    207: DceRpcOp(Opnum207Reserved_Request, Opnum207Reserved_Response),
    208: DceRpcOp(Opnum208Reserved_Request, Opnum208Reserved_Response),
    209: DceRpcOp(Opnum209Reserved_Request, Opnum209Reserved_Response),
    210: DceRpcOp(Opnum210Reserved_Request, Opnum210Reserved_Response),
    211: DceRpcOp(Opnum211Reserved_Request, Opnum211Reserved_Response),
    212: DceRpcOp(Opnum212Reserved_Request, Opnum212Reserved_Response),
    213: DceRpcOp(Opnum213Reserved_Request, Opnum213Reserved_Response),
    214: DceRpcOp(Opnum214Reserved_Request, Opnum214Reserved_Response),
    215: DceRpcOp(Opnum215Reserved_Request, Opnum215Reserved_Response),
    216: DceRpcOp(Opnum216Reserved_Request, Opnum216Reserved_Response),
    217: DceRpcOp(Opnum217Reserved_Request, Opnum217Reserved_Response),
    218: DceRpcOp(Opnum218Reserved_Request, Opnum218Reserved_Response),
    219: DceRpcOp(Opnum219Reserved_Request, Opnum219Reserved_Response),
    220: DceRpcOp(Opnum220Reserved_Request, Opnum220Reserved_Response),
    221: DceRpcOp(Opnum221Reserved_Request, Opnum221Reserved_Response),
    222: DceRpcOp(Opnum222Reserved_Request, Opnum222Reserved_Response),
    223: DceRpcOp(Opnum223Reserved_Request, Opnum223Reserved_Response),
    224: DceRpcOp(Opnum224Reserved_Request, Opnum224Reserved_Response),
    225: DceRpcOp(Opnum225Reserved_Request, Opnum225Reserved_Response),
    226: DceRpcOp(Opnum226Reserved_Request, Opnum226Reserved_Response),
    227: DceRpcOp(Opnum227Reserved_Request, Opnum227Reserved_Response),
    228: DceRpcOp(Opnum228Reserved_Request, Opnum228Reserved_Response),
    229: DceRpcOp(Opnum229Reserved_Request, Opnum229Reserved_Response),
    230: DceRpcOp(Opnum230Reserved_Request, Opnum230Reserved_Response),
    231: DceRpcOp(Opnum231Reserved_Request, Opnum231Reserved_Response),
    232: DceRpcOp(Opnum232Reserved_Request, Opnum232Reserved_Response),
    233: DceRpcOp(Opnum233Reserved_Request, Opnum233Reserved_Response),
    234: DceRpcOp(Opnum234Reserved_Request, Opnum234Reserved_Response),
    235: DceRpcOp(Opnum235Reserved_Request, Opnum235Reserved_Response),
    236: DceRpcOp(Opnum236Reserved_Request, Opnum236Reserved_Response),
    237: DceRpcOp(Opnum237Reserved_Request, Opnum237Reserved_Response),
    238: DceRpcOp(Opnum238Reserved_Request, Opnum238Reserved_Response),
    239: DceRpcOp(Opnum239Reserved_Request, Opnum239Reserved_Response),
    240: DceRpcOp(Opnum240Reserved_Request, Opnum240Reserved_Response),
    241: DceRpcOp(Opnum241Reserved_Request, Opnum241Reserved_Response),
    242: DceRpcOp(Opnum242Reserved_Request, Opnum242Reserved_Response),
    243: DceRpcOp(Opnum243Reserved_Request, Opnum243Reserved_Response),
    244: DceRpcOp(Opnum244Reserved_Request, Opnum244Reserved_Response),
    245: DceRpcOp(Opnum245Reserved_Request, Opnum245Reserved_Response),
    246: DceRpcOp(Opnum246Reserved_Request, Opnum246Reserved_Response),
    247: DceRpcOp(Opnum247Reserved_Request, Opnum247Reserved_Response),
    248: DceRpcOp(Opnum248Reserved_Request, Opnum248Reserved_Response),
    249: DceRpcOp(Opnum249Reserved_Request, Opnum249Reserved_Response),
    250: DceRpcOp(Opnum250Reserved_Request, Opnum250Reserved_Response),
    251: DceRpcOp(Opnum251Reserved_Request, Opnum251Reserved_Response),
    252: DceRpcOp(Opnum252Reserved_Request, Opnum252Reserved_Response),
    253: DceRpcOp(Opnum253Reserved_Request, Opnum253Reserved_Response),
    254: DceRpcOp(Opnum254Reserved_Request, Opnum254Reserved_Response),
    255: DceRpcOp(Opnum255Reserved_Request, Opnum255Reserved_Response),
    256: DceRpcOp(Opnum256Reserved_Request, Opnum256Reserved_Response),
    257: DceRpcOp(Opnum257Reserved_Request, Opnum257Reserved_Response),
    258: DceRpcOp(Opnum258Reserved_Request, Opnum258Reserved_Response),
    259: DceRpcOp(Opnum259Reserved_Request, Opnum259Reserved_Response),
    260: DceRpcOp(Opnum260Reserved_Request, Opnum260Reserved_Response),
    261: DceRpcOp(Opnum261Reserved_Request, Opnum261Reserved_Response),
    262: DceRpcOp(Opnum262Reserved_Request, Opnum262Reserved_Response),
    263: DceRpcOp(Opnum263Reserved_Request, Opnum263Reserved_Response),
    # 264: Opnum264NotUsedOnWire
}
register_dcerpc_interface(
    name="clusapi",
    uuid=uuid.UUID("b97db8b2-4c63-11cf-bff6-08002be23f2f"),
    version="3.0",
    opnums=CLUSAPI_OPNUMS,
)
