{"version":3,"sources":["../generated/infrastructure_map.ts","../generated/google/protobuf/wrappers.ts","../generated/google/protobuf/duration.ts"],"sourcesContent":["// @generated by protobuf-ts 2.11.1\n// @generated from protobuf file \"infrastructure_map.proto\" (package \"moose.proto\", syntax proto3)\n// tslint:disable\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\nimport { StringValue } from \"./google/protobuf/wrappers\";\nimport { Duration } from \"./google/protobuf/duration\";\n/**\n * @generated from protobuf message moose.proto.InfrastructureMap\n */\nexport interface InfrastructureMap {\n    /**\n     * @generated from protobuf field: map<string, moose.proto.Topic> topics = 1\n     */\n    topics: {\n        [key: string]: Topic;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.ApiEndpoint> api_endpoints = 2\n     */\n    apiEndpoints: {\n        [key: string]: ApiEndpoint;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.Table> tables = 3\n     */\n    tables: {\n        [key: string]: Table;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.Dmv1View> dmv1_views = 4\n     */\n    dmv1Views: {\n        [key: string]: Dmv1View;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.TopicToTableSyncProcess> topic_to_table_sync_processes = 5\n     */\n    topicToTableSyncProcesses: {\n        [key: string]: TopicToTableSyncProcess;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.TopicToTopicSyncProcess> topic_to_topic_sync_processes = 6\n     */\n    topicToTopicSyncProcesses: {\n        [key: string]: TopicToTopicSyncProcess;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.FunctionProcess> function_processes = 7\n     */\n    functionProcesses: {\n        [key: string]: FunctionProcess;\n    };\n    /**\n     *  add then when they have fields in rust\n     *  OlapProcess block_db_processes = 8;\n     *  ConsumptionApiWebServer consumption_api_web_server = 9;\n     *\n     * @generated from protobuf field: map<string, moose.proto.InitialDataLoad> initial_data_loads = 10\n     */\n    initialDataLoads: {\n        [key: string]: InitialDataLoad;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.OrchestrationWorker> orchestration_workers = 11\n     */\n    orchestrationWorkers: {\n        [key: string]: OrchestrationWorker;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.SqlResource> sql_resources = 12\n     */\n    sqlResources: {\n        [key: string]: SqlResource;\n    };\n    /**\n     * @generated from protobuf field: map<string, moose.proto.WebApp> web_apps = 13\n     */\n    webApps: {\n        [key: string]: WebApp;\n    };\n    /**\n     * Version of Moose CLI that created or last updated this infrastructure map\n     * Helps with debugging, compatibility tracking, and migration planning\n     *\n     * @generated from protobuf field: string moose_version = 19\n     */\n    mooseVersion: string;\n    /**\n     * @generated from protobuf field: string default_database = 15\n     */\n    defaultDatabase: string;\n    /**\n     * Structured materialized views (replaces SqlResource for MVs)\n     *\n     * @generated from protobuf field: map<string, moose.proto.MaterializedView> materialized_views = 16\n     */\n    materializedViews: {\n        [key: string]: MaterializedView;\n    };\n    /**\n     * Structured views (replaces SqlResource for views)\n     *\n     * @generated from protobuf field: map<string, moose.proto.View> views = 17\n     */\n    views: {\n        [key: string]: View;\n    };\n    /**\n     * Workflow definitions\n     *\n     * @generated from protobuf field: map<string, moose.proto.Workflow> workflows = 18\n     */\n    workflows: {\n        [key: string]: Workflow;\n    };\n    /**\n     * Row-level security policies\n     *\n     * @generated from protobuf field: map<string, moose.proto.SelectRowPolicy> select_row_policies = 20\n     */\n    selectRowPolicies: {\n        [key: string]: SelectRowPolicy;\n    };\n    /**\n     * ClickHouse Dictionaries\n     *\n     * @generated from protobuf field: map<string, moose.proto.OlapDictionary> olap_dictionaries = 21\n     */\n    olapDictionaries: {\n        [key: string]: OlapDictionary;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.SourceLocation\n */\nexport interface SourceLocation {\n    /**\n     * @generated from protobuf field: string file = 1\n     */\n    file: string;\n}\n/**\n * @generated from protobuf message moose.proto.Metadata\n */\nexport interface Metadata {\n    /**\n     * @generated from protobuf field: string description = 1\n     */\n    description: string;\n    /**\n     * @generated from protobuf field: optional moose.proto.SourceLocation source = 2\n     */\n    source?: SourceLocation;\n}\n/**\n * @generated from protobuf message moose.proto.Topic\n */\nexport interface Topic {\n    /**\n     * @generated from protobuf field: optional string version = 1\n     */\n    version?: string;\n    /**\n     * @generated from protobuf field: string name = 2\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: google.protobuf.Duration retention_period = 3\n     */\n    retentionPeriod?: Duration;\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column columns = 4\n     */\n    columns: Column[];\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 5\n     */\n    sourcePrimitive?: PrimitiveSignature;\n    /**\n     * @generated from protobuf field: optional int32 partition_count = 6\n     */\n    partitionCount?: number;\n    /**\n     * @generated from protobuf field: optional int32 max_message_bytes = 7\n     */\n    maxMessageBytes?: number;\n    /**\n     * @generated from protobuf field: moose.proto.Metadata metadata = 8\n     */\n    metadata?: Metadata;\n    /**\n     * @generated from protobuf field: moose.proto.LifeCycle life_cycle = 9\n     */\n    lifeCycle: LifeCycle;\n    /**\n     * Optional Schema Registry configuration\n     *\n     * @generated from protobuf field: optional moose.proto.SchemaRegistry schema_registry = 10\n     */\n    schemaRegistry?: SchemaRegistry;\n}\n/**\n * Encodes schema reference used for Schema Registry integration\n *\n * @generated from protobuf message moose.proto.SchemaRegistry\n */\nexport interface SchemaRegistry {\n    /**\n     * Encoding/wire format; avoid reserved names in generators\n     *\n     * @generated from protobuf field: moose.proto.SchemaRegistry.Encoding encoding = 1\n     */\n    encoding: SchemaRegistry_Encoding;\n    /**\n     * @generated from protobuf oneof: schema_ref\n     */\n    schemaRef: {\n        oneofKind: \"schemaId\";\n        /**\n         * Use a concrete schema ID\n         *\n         * @generated from protobuf field: int32 schema_id = 2\n         */\n        schemaId: number;\n    } | {\n        oneofKind: \"subject\";\n        /**\n         * Use subject name (latest version)\n         *\n         * @generated from protobuf field: string subject = 3\n         */\n        subject: string;\n    } | {\n        oneofKind: \"subjectVersion\";\n        /**\n         * Use subject name with explicit version\n         *\n         * @generated from protobuf field: moose.proto.SubjectVersion subject_version = 4\n         */\n        subjectVersion: SubjectVersion;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf enum moose.proto.SchemaRegistry.Encoding\n */\nexport enum SchemaRegistry_Encoding {\n    /**\n     * @generated from protobuf enum value: JSON = 0;\n     */\n    JSON = 0,\n    /**\n     * @generated from protobuf enum value: AVRO = 1;\n     */\n    AVRO = 1,\n    /**\n     * @generated from protobuf enum value: PROTOBUF = 2;\n     */\n    PROTOBUF = 2\n}\n/**\n * @generated from protobuf message moose.proto.SubjectVersion\n */\nexport interface SubjectVersion {\n    /**\n     * @generated from protobuf field: string subject = 1\n     */\n    subject: string;\n    /**\n     * @generated from protobuf field: int32 version = 2\n     */\n    version: number;\n}\n/**\n * @generated from protobuf message moose.proto.ApiEndpoint\n */\nexport interface ApiEndpoint {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf oneof: api_type\n     */\n    apiType: {\n        oneofKind: \"ingress\";\n        /**\n         * @generated from protobuf field: moose.proto.IngressDetails ingress = 2\n         */\n        ingress: IngressDetails;\n    } | {\n        oneofKind: \"egress\";\n        /**\n         * @generated from protobuf field: moose.proto.EgressDetails egress = 3\n         */\n        egress: EgressDetails;\n    } | {\n        oneofKind: undefined;\n    };\n    /**\n     * @generated from protobuf field: string path = 4\n     */\n    path: string;\n    /**\n     * @generated from protobuf field: moose.proto.Method method = 5\n     */\n    method: Method;\n    /**\n     * @generated from protobuf field: optional string version = 6\n     */\n    version?: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 7\n     */\n    sourcePrimitive?: PrimitiveSignature;\n    /**\n     * @generated from protobuf field: moose.proto.Metadata metadata = 8\n     */\n    metadata?: Metadata;\n    /**\n     * Infrastructure components this API endpoint reads data from.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pulls_data_from = 9\n     */\n    pullsDataFrom: InfrastructureSignature[];\n    /**\n     * Infrastructure components this API endpoint writes data to.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pushes_data_to = 10\n     */\n    pushesDataTo: InfrastructureSignature[];\n}\n/**\n * @generated from protobuf message moose.proto.IngressDetails\n */\nexport interface IngressDetails {\n    /**\n     * @generated from protobuf field: string target_topic = 1\n     */\n    targetTopic: string;\n    /**\n     * @deprecated\n     * @generated from protobuf field: optional moose.proto.EndpointIngestionFormat format = 2 [deprecated = true]\n     */\n    format?: EndpointIngestionFormat;\n    /**\n     * @generated from protobuf field: optional string dead_letter_queue = 3\n     */\n    deadLetterQueue?: string;\n}\n/**\n * @generated from protobuf message moose.proto.EgressDetails\n */\nexport interface EgressDetails {\n    /**\n     * @generated from protobuf field: repeated moose.proto.ConsumptionQueryParam query_params = 1\n     */\n    queryParams: ConsumptionQueryParam[];\n    /**\n     * might be worth it to use google.protobuf.Value\n     *\n     * @generated from protobuf field: string output_schema = 2\n     */\n    outputSchema: string;\n}\n/**\n * @generated from protobuf message moose.proto.ConsumptionQueryParam\n */\nexport interface ConsumptionQueryParam {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: moose.proto.ColumnType data_type = 2\n     */\n    dataType?: ColumnType;\n    /**\n     * @generated from protobuf field: bool required = 3\n     */\n    required: boolean;\n}\n/**\n * @generated from protobuf message moose.proto.Table\n */\nexport interface Table {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column columns = 2\n     */\n    columns: Column[];\n    /**\n     * @generated from protobuf field: repeated string order_by = 3\n     */\n    orderBy: string[];\n    /**\n     * @generated from protobuf field: optional string version = 4\n     */\n    version?: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 5\n     */\n    sourcePrimitive?: PrimitiveSignature;\n    /**\n     * @deprecated\n     * @generated from protobuf field: bool deduplicate = 6 [deprecated = true]\n     */\n    deduplicate: boolean;\n    /**\n     * @generated from protobuf field: google.protobuf.StringValue engine = 7\n     */\n    engine?: StringValue;\n    /**\n     * @generated from protobuf field: moose.proto.Metadata metadata = 8\n     */\n    metadata?: Metadata;\n    /**\n     * @generated from protobuf field: moose.proto.LifeCycle life_cycle = 9\n     */\n    lifeCycle: LifeCycle;\n    /**\n     * Hash of non-alterable engine parameters for change detection\n     *\n     * @generated from protobuf field: optional string engine_params_hash = 10\n     */\n    engineParamsHash?: string;\n    /**\n     * Alterable table settings (can be changed with ALTER TABLE MODIFY SETTING)\n     *\n     * @generated from protobuf field: map<string, string> table_settings = 11\n     */\n    tableSettings: {\n        [key: string]: string;\n    };\n    /**\n     * Optional PARTITION BY expression for ClickHouse tables\n     *\n     * @generated from protobuf field: optional string partition_by = 12\n     */\n    partitionBy?: string;\n    /**\n     * Next-version ORDER BY representation to match Rust enum\n     * Non-breaking: keeps legacy order_by (field 3) while adding a structured variant\n     *\n     * @generated from protobuf field: optional moose.proto.OrderBy order_by2 = 13\n     */\n    orderBy2?: OrderBy;\n    /**\n     * Optional secondary/data-skipping indexes\n     *\n     * @generated from protobuf field: repeated moose.proto.TableIndex indexes = 14\n     */\n    indexes: TableIndex[];\n    /**\n     * Optional SAMPLE BY expression for ClickHouse tables\n     *\n     * @generated from protobuf field: optional string sample_by_expression = 15\n     */\n    sampleByExpression?: string;\n    /**\n     * Optional TTL expression at table level (without leading 'TTL')\n     *\n     * @generated from protobuf field: optional string table_ttl_setting = 16\n     */\n    tableTtlSetting?: string;\n    /**\n     * Optional database name for multi-database support\n     * When not specified, uses the global ClickHouse config database\n     *\n     * @generated from protobuf field: optional string database = 17\n     */\n    database?: string;\n    /**\n     * Optional cluster name for ON CLUSTER support in ClickHouse\n     *\n     * @generated from protobuf field: optional string cluster_name = 18\n     */\n    clusterName?: string;\n    /**\n     * Optional PRIMARY KEY expression\n     * When specified, overrides primary_key boolean flags on columns\n     *\n     * @generated from protobuf field: optional string primary_key_expression = 19\n     */\n    primaryKeyExpression?: string;\n    /**\n     * Hash of table settings for change detection (including sensitive settings)\n     * Used to detect settings changes without storing plaintext sensitive values\n     *\n     * @generated from protobuf field: optional string table_settings_hash = 20\n     */\n    tableSettingsHash?: string;\n    /**\n     * Optional table projections for alternative data ordering within parts\n     *\n     * @generated from protobuf field: repeated moose.proto.TableProjection projections = 21\n     */\n    projections: TableProjection[];\n    /**\n     * Per-table filter for `moose seed clickhouse`\n     *\n     * @generated from protobuf field: optional moose.proto.SeedFilter seed_filter = 22\n     */\n    seedFilter?: SeedFilter;\n    /**\n     * Table-level constraints\n     *\n     * @generated from protobuf field: repeated moose.proto.TableConstraint constraints = 23\n     */\n    constraints: TableConstraint[];\n}\n/**\n * DB-neutral representation of a table projection\n *\n * @generated from protobuf message moose.proto.TableProjection\n */\nexport interface TableProjection {\n    /**\n     * The projection identifier as it appears after `PROJECTION` in the DDL\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * The parenthesised body (without the outer parentheses)\n     *\n     * @generated from protobuf field: string body = 2\n     */\n    body: string;\n}\n/**\n * DB-neutral representation of a table constraint\n *\n * @generated from protobuf message moose.proto.TableConstraint\n */\nexport interface TableConstraint {\n    /**\n     * The unique identifier or name of the constraint\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * The SQL or logical expression enforcing the constraint condition\n     *\n     * @generated from protobuf field: string expression = 2\n     */\n    expression: string;\n    /**\n     * The category of the constraint (e.g., \"CHECK\", \"ASSUME\")\n     *\n     * @generated from protobuf field: string constraint_type = 3\n     */\n    constraintType: string;\n}\n// Structured representation of ORDER BY to support either explicit fields\n\n/**\n * or an arbitrary ClickHouse SQL expression.\n *\n * @generated from protobuf message moose.proto.OrderBy\n */\nexport interface OrderBy {\n    /**\n     * @generated from protobuf oneof: t\n     */\n    t: {\n        oneofKind: \"fields\";\n        /**\n         * Explicit ordered list of fields\n         *\n         * @generated from protobuf field: moose.proto.OrderByFields fields = 1\n         */\n        fields: OrderByFields;\n    } | {\n        oneofKind: \"expression\";\n        /**\n         * Arbitrary ClickHouse expression, e.g. \"tuple()\" or \"(id, name)\"\n         *\n         * @generated from protobuf field: string expression = 2\n         */\n        expression: string;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.OrderByFields\n */\nexport interface OrderByFields {\n    /**\n     * @generated from protobuf field: repeated string field = 1\n     */\n    field: string[];\n}\n/**\n * DB-neutral representation of a table index\n *\n * @generated from protobuf message moose.proto.TableIndex\n */\nexport interface TableIndex {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: string expression = 2\n     */\n    expression: string;\n    /**\n     * @generated from protobuf field: string type = 3\n     */\n    type: string;\n    /**\n     * @generated from protobuf field: repeated string arguments = 4\n     */\n    arguments: string[];\n    /**\n     * @generated from protobuf field: uint64 granularity = 5\n     */\n    granularity: bigint;\n}\n/**\n * Per-table filtering for `moose seed clickhouse`\n *\n * @generated from protobuf message moose.proto.SeedFilter\n */\nexport interface SeedFilter {\n    /**\n     * Maximum rows to seed (falls back to CLI --limit, then global default)\n     *\n     * @generated from protobuf field: optional uint64 limit = 1\n     */\n    limit?: bigint;\n    /**\n     * ClickHouse SQL WHERE expression appended to the seed query\n     *\n     * @generated from protobuf field: optional string where_clause = 2\n     */\n    whereClause?: string;\n}\n/**\n * @generated from protobuf message moose.proto.Dmv1View\n */\nexport interface Dmv1View {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: string version = 2\n     */\n    version: string;\n    /**\n     * @generated from protobuf oneof: view_type\n     */\n    viewType: {\n        oneofKind: \"tableAlias\";\n        /**\n         * @generated from protobuf field: moose.proto.TableAlias table_alias = 3\n         */\n        tableAlias: TableAlias;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.TableAlias\n */\nexport interface TableAlias {\n    /**\n     * @generated from protobuf field: string source_table_name = 1\n     */\n    sourceTableName: string;\n}\n/**\n * Reference to a table, optionally qualified with database\n *\n * @generated from protobuf message moose.proto.TableReference\n */\nexport interface TableReference {\n    /**\n     * Database name (empty means use default database)\n     *\n     * @generated from protobuf field: optional string database = 1\n     */\n    database?: string;\n    /**\n     * Table name\n     *\n     * @generated from protobuf field: string table = 2\n     */\n    table: string;\n}\n/**\n * Represents a SELECT query with semantic information\n *\n * @generated from protobuf message moose.proto.SelectQuery\n */\nexport interface SelectQuery {\n    /**\n     * The raw SELECT SQL statement\n     *\n     * @generated from protobuf field: string sql = 1\n     */\n    sql: string;\n    /**\n     * Tables/views referenced in the FROM clause(s)\n     *\n     * @generated from protobuf field: repeated moose.proto.TableReference source_tables = 2\n     */\n    sourceTables: TableReference[];\n}\n/**\n * User-defined ClickHouse View with an arbitrary SELECT query.\n * Views are virtual tables that compute results on-demand.\n *\n * @generated from protobuf message moose.proto.View\n */\nexport interface View {\n    /**\n     * Name of the view\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * Database where the view is created (empty = default database)\n     *\n     * @generated from protobuf field: optional string database = 2\n     */\n    database?: string;\n    /**\n     * The SELECT query that defines the view\n     *\n     * @generated from protobuf field: moose.proto.SelectQuery select_query = 3\n     */\n    selectQuery?: SelectQuery;\n    /**\n     * Optional metadata for the view (e.g., description, source file)\n     *\n     * @generated from protobuf field: optional moose.proto.Metadata metadata = 4\n     */\n    metadata?: Metadata;\n}\n/**\n * ClickHouse Materialized View that writes transformed data to a target table.\n * MVs run the SELECT query on insert and persist results.\n *\n * @generated from protobuf message moose.proto.MaterializedView\n */\nexport interface MaterializedView {\n    /**\n     * Name of the materialized view\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * Database where the MV is created (empty = default database)\n     *\n     * @generated from protobuf field: optional string database = 2\n     */\n    database?: string;\n    /**\n     * The SELECT query that defines the transformation\n     *\n     * @generated from protobuf field: moose.proto.SelectQuery select_query = 3\n     */\n    selectQuery?: SelectQuery;\n    /**\n     * Target table where transformed data is written (the TO clause)\n     *\n     * @generated from protobuf field: moose.proto.TableReference target_table = 4\n     */\n    targetTable?: TableReference;\n    /**\n     * Optional metadata for the materialized view (e.g., description, source file)\n     *\n     * @generated from protobuf field: optional moose.proto.Metadata metadata = 5\n     */\n    metadata?: Metadata;\n    /**\n     * Lifecycle management policy for the materialized view\n     *\n     * @generated from protobuf field: moose.proto.LifeCycle life_cycle = 6\n     */\n    lifeCycle: LifeCycle;\n}\n/**\n * @generated from protobuf message moose.proto.TopicToTableSyncProcess\n */\nexport interface TopicToTableSyncProcess {\n    /**\n     * @generated from protobuf field: string source_topic_id = 1\n     */\n    sourceTopicId: string;\n    /**\n     * @generated from protobuf field: string target_table_id = 2\n     */\n    targetTableId: string;\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column columns = 3\n     */\n    columns: Column[];\n    /**\n     * @generated from protobuf field: optional string version = 4\n     */\n    version?: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 5\n     */\n    sourcePrimitive?: PrimitiveSignature;\n}\n/**\n * @generated from protobuf message moose.proto.TopicToTopicSyncProcess\n */\nexport interface TopicToTopicSyncProcess {\n    /**\n     * @generated from protobuf field: string source_topic_id = 1\n     */\n    sourceTopicId: string;\n    /**\n     * @generated from protobuf field: string target_topic_id = 2\n     */\n    targetTopicId: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 3\n     */\n    sourcePrimitive?: PrimitiveSignature;\n}\n/**\n * @generated from protobuf message moose.proto.FunctionProcess\n */\nexport interface FunctionProcess {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: string source_topic = 2\n     */\n    sourceTopic: string;\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column source_columns = 3\n     */\n    sourceColumns: Column[];\n    /**\n     * @generated from protobuf field: optional string target_topic = 4\n     */\n    targetTopic?: string;\n    /**\n     * @generated from protobuf field: map<string, string> target_topic_config = 5\n     */\n    targetTopicConfig: {\n        [key: string]: string;\n    };\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column target_columns = 6\n     */\n    targetColumns: Column[];\n    /**\n     * @generated from protobuf field: string executable = 7\n     */\n    executable: string;\n    /**\n     * @generated from protobuf field: optional string version = 8\n     */\n    version?: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveSignature source_primitive = 9\n     */\n    sourcePrimitive?: PrimitiveSignature;\n    /**\n     * @generated from protobuf field: optional int32 parallel_process_count = 10\n     */\n    parallelProcessCount?: number;\n    /**\n     * @generated from protobuf field: optional moose.proto.Metadata metadata = 11\n     */\n    metadata?: Metadata;\n    /**\n     * Topic ID for the dead letter queue, used to construct namespace-prefixed topic name\n     *\n     * @generated from protobuf field: optional string dead_letter_queue_topic_id = 12\n     */\n    deadLetterQueueTopicId?: string;\n}\n/**\n * @generated from protobuf message moose.proto.InitialDataLoad\n */\nexport interface InitialDataLoad {\n    /**\n     * @generated from protobuf field: moose.proto.Table table = 1\n     */\n    table?: Table;\n    /**\n     * @generated from protobuf field: string topic = 2\n     */\n    topic: string;\n    /**\n     * @generated from protobuf field: optional uint64 progress = 3\n     */\n    progress?: bigint;\n}\n/**\n * @generated from protobuf message moose.proto.Column\n */\nexport interface Column {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: moose.proto.ColumnType data_type = 2\n     */\n    dataType?: ColumnType;\n    /**\n     * @generated from protobuf field: bool required = 3\n     */\n    required: boolean;\n    /**\n     * @generated from protobuf field: bool unique = 4\n     */\n    unique: boolean;\n    /**\n     * @generated from protobuf field: bool primary_key = 5\n     */\n    primaryKey: boolean;\n    /**\n     * was an enum that we never used\n     *\n     * @deprecated\n     * @generated from protobuf field: int32 default = 6 [deprecated = true]\n     */\n    default: number;\n    /**\n     * Column default is now a free-form SQL expression passed as a string\n     *\n     * @generated from protobuf field: google.protobuf.StringValue default_expr = 9\n     */\n    defaultExpr?: StringValue;\n    /**\n     * @generated from protobuf field: map<string, string> annotations = 7\n     */\n    annotations: {\n        [key: string]: string;\n    };\n    /**\n     * @generated from protobuf field: optional string comment = 8\n     */\n    comment?: string; // Column comment for metadata storage\n    /**\n     * Optional column-level TTL expression (without leading 'TTL')\n     *\n     * @generated from protobuf field: optional string ttl = 10\n     */\n    ttl?: string;\n    /**\n     * Compression codec expression (e.g., \"ZSTD(3)\", \"Delta, LZ4\")\n     *\n     * @generated from protobuf field: optional string codec = 11\n     */\n    codec?: string;\n    /**\n     * Materialized expression\n     *\n     * @generated from protobuf field: optional string materialized = 12\n     */\n    materialized?: string;\n    /**\n     * Alias expression (computed at query time, not stored)\n     *\n     * @generated from protobuf field: optional string alias = 13\n     */\n    alias?: string;\n}\n/**\n * @generated from protobuf message moose.proto.Decimal\n */\nexport interface Decimal {\n    /**\n     * @generated from protobuf field: int32 precision = 1\n     */\n    precision: number;\n    /**\n     * @generated from protobuf field: int32 scale = 2\n     */\n    scale: number;\n}\n/**\n * @generated from protobuf message moose.proto.Tuple\n */\nexport interface Tuple {\n    /**\n     * @generated from protobuf field: repeated string names = 1\n     */\n    names: string[];\n    /**\n     * @generated from protobuf field: repeated moose.proto.ColumnType types = 2\n     */\n    types: ColumnType[];\n}\n/**\n * @generated from protobuf message moose.proto.Map\n */\nexport interface Map {\n    /**\n     * @generated from protobuf field: moose.proto.ColumnType key_type = 1\n     */\n    keyType?: ColumnType;\n    /**\n     * @generated from protobuf field: moose.proto.ColumnType value_type = 2\n     */\n    valueType?: ColumnType;\n}\n/**\n * JSON type with optional settings\n *\n * @generated from protobuf message moose.proto.JsonTypedPath\n */\nexport interface JsonTypedPath {\n    /**\n     * JSON path like \"a.b[0].c\"\n     *\n     * @generated from protobuf field: string path = 1\n     */\n    path: string;\n    /**\n     * Concrete type for the value at the path\n     *\n     * @generated from protobuf field: moose.proto.ColumnType type = 2\n     */\n    type?: ColumnType;\n}\n/**\n * @generated from protobuf message moose.proto.Json\n */\nexport interface Json {\n    /**\n     * Limits for dynamic discovery\n     *\n     * @generated from protobuf field: optional uint64 max_dynamic_paths = 1\n     */\n    maxDynamicPaths?: bigint;\n    /**\n     * @generated from protobuf field: optional uint64 max_dynamic_types = 2\n     */\n    maxDynamicTypes?: bigint;\n    /**\n     * List of typed paths (path, type)\n     *\n     * @generated from protobuf field: repeated moose.proto.JsonTypedPath typed_paths = 3\n     */\n    typedPaths: JsonTypedPath[];\n    /**\n     * Paths to skip during ingestion\n     *\n     * @generated from protobuf field: repeated string skip_paths = 4\n     */\n    skipPaths: string[];\n    /**\n     * Regex patterns of paths to skip\n     *\n     * @generated from protobuf field: repeated string skip_regexps = 5\n     */\n    skipRegexps: string[];\n}\n/**\n * TODO: nullable not being a type, relying on `bool required`\n * is causing some mess e.g. the special case array_of_nullable\n *\n * @generated from protobuf message moose.proto.ColumnType\n */\nexport interface ColumnType {\n    /**\n     * @generated from protobuf oneof: t\n     */\n    t: {\n        oneofKind: \"simple\";\n        /**\n         * @generated from protobuf field: moose.proto.SimpleColumnType simple = 1\n         */\n        simple: SimpleColumnType;\n    } | {\n        oneofKind: \"enum\";\n        /**\n         * @generated from protobuf field: moose.proto.DataEnum enum = 2\n         */\n        enum: DataEnum;\n    } | {\n        oneofKind: \"array\";\n        /**\n         * @generated from protobuf field: moose.proto.ColumnType array = 3\n         */\n        array: ColumnType;\n    } | {\n        oneofKind: \"nested\";\n        /**\n         * @generated from protobuf field: moose.proto.Nested nested = 4\n         */\n        nested: Nested;\n    } | {\n        oneofKind: \"arrayOfNullable\";\n        /**\n         * @generated from protobuf field: moose.proto.ColumnType array_of_nullable = 5\n         */\n        arrayOfNullable: ColumnType;\n    } | {\n        oneofKind: \"tuple\";\n        /**\n         * @generated from protobuf field: moose.proto.Tuple tuple = 6\n         */\n        tuple: Tuple;\n    } | {\n        oneofKind: \"nullable\";\n        /**\n         * @generated from protobuf field: moose.proto.ColumnType nullable = 7\n         */\n        nullable: ColumnType;\n    } | {\n        oneofKind: \"map\";\n        /**\n         * @generated from protobuf field: moose.proto.Map map = 8\n         */\n        map: Map;\n    } | {\n        oneofKind: \"json\";\n        /**\n         * JSON with settings (non-breaking addition). Keep legacy `simple = JSON_COLUMN` for back-compat.\n         *\n         * @generated from protobuf field: moose.proto.Json json = 9\n         */\n        json: Json;\n    } | {\n        oneofKind: \"fixedString\";\n        /**\n         * @generated from protobuf field: uint64 fixed_string = 11\n         */\n        fixedString: bigint;\n    } | {\n        oneofKind: \"dateTime\";\n        /**\n         * @generated from protobuf field: moose.proto.DateType date_time = 12\n         */\n        dateTime: DateType;\n    } | {\n        oneofKind: \"decimal\";\n        /**\n         * @generated from protobuf field: moose.proto.Decimal decimal = 13\n         */\n        decimal: Decimal;\n    } | {\n        oneofKind: \"float\";\n        /**\n         * @generated from protobuf field: moose.proto.FloatType float = 14\n         */\n        float: FloatType;\n    } | {\n        oneofKind: \"int\";\n        /**\n         * @generated from protobuf field: moose.proto.IntType int = 15\n         */\n        int: IntType;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.DateType\n */\nexport interface DateType {\n    /**\n     * @generated from protobuf field: int32 precision = 1\n     */\n    precision: number;\n}\n/**\n * @generated from protobuf message moose.proto.DataEnum\n */\nexport interface DataEnum {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: repeated moose.proto.EnumMember values = 2\n     */\n    values: EnumMember[];\n}\n/**\n * @generated from protobuf message moose.proto.Nested\n */\nexport interface Nested {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: repeated moose.proto.Column columns = 2\n     */\n    columns: Column[];\n    /**\n     * @generated from protobuf field: bool jwt = 3\n     */\n    jwt: boolean;\n}\n/**\n * @generated from protobuf message moose.proto.EnumMember\n */\nexport interface EnumMember {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: moose.proto.EnumValue value = 2\n     */\n    value?: EnumValue;\n}\n/**\n * @generated from protobuf message moose.proto.EnumValue\n */\nexport interface EnumValue {\n    /**\n     * @generated from protobuf oneof: value\n     */\n    value: {\n        oneofKind: \"intValue\";\n        /**\n         * @generated from protobuf field: int32 int_value = 1\n         */\n        intValue: number;\n    } | {\n        oneofKind: \"stringValue\";\n        /**\n         * @generated from protobuf field: string string_value = 2\n         */\n        stringValue: string;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.PrimitiveSignature\n */\nexport interface PrimitiveSignature {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: moose.proto.PrimitiveTypes primitive_type = 2\n     */\n    primitiveType: PrimitiveTypes;\n}\n/**\n * @generated from protobuf message moose.proto.OrchestrationWorker\n */\nexport interface OrchestrationWorker {\n    /**\n     * @generated from protobuf field: string supported_language = 1\n     */\n    supportedLanguage: string;\n}\n/**\n * @generated from protobuf message moose.proto.SqlResource\n */\nexport interface SqlResource {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: repeated string setup = 2\n     */\n    setup: string[];\n    /**\n     * @generated from protobuf field: repeated string teardown = 3\n     */\n    teardown: string[];\n    /**\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pulls_data_from = 5\n     */\n    pullsDataFrom: InfrastructureSignature[];\n    /**\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pushes_data_to = 6\n     */\n    pushesDataTo: InfrastructureSignature[];\n    /**\n     * Optional database name for multi-database support\n     * When not specified, uses the global ClickHouse config database\n     *\n     * @generated from protobuf field: optional string database = 7\n     */\n    database?: string;\n    /**\n     * Optional source file path where this SQL resource is defined\n     *\n     * @generated from protobuf field: string source_file = 8\n     */\n    sourceFile: string;\n}\n/**\n * @generated from protobuf message moose.proto.InfrastructureSignature\n */\nexport interface InfrastructureSignature {\n    /**\n     * @generated from protobuf oneof: signature\n     */\n    signature: {\n        oneofKind: \"topicId\";\n        /**\n         * @generated from protobuf field: string topic_id = 1\n         */\n        topicId: string;\n    } | {\n        oneofKind: \"tableId\";\n        /**\n         * @generated from protobuf field: string table_id = 2\n         */\n        tableId: string;\n    } | {\n        oneofKind: \"dmv1ViewId\";\n        /**\n         * @generated from protobuf field: string dmv1_view_id = 3\n         */\n        dmv1ViewId: string;\n    } | {\n        oneofKind: \"sqlResourceId\";\n        /**\n         * @generated from protobuf field: string sql_resource_id = 4\n         */\n        sqlResourceId: string;\n    } | {\n        oneofKind: \"apiEndpointId\";\n        /**\n         * @generated from protobuf field: string api_endpoint_id = 5\n         */\n        apiEndpointId: string;\n    } | {\n        oneofKind: \"topicToTableSyncProcessId\";\n        /**\n         * @generated from protobuf field: string topic_to_table_sync_process_id = 6\n         */\n        topicToTableSyncProcessId: string;\n    } | {\n        oneofKind: \"materializedViewId\";\n        /**\n         * @generated from protobuf field: string materialized_view_id = 7\n         */\n        materializedViewId: string;\n    } | {\n        oneofKind: \"viewId\";\n        /**\n         * @generated from protobuf field: string view_id = 8\n         */\n        viewId: string;\n    } | {\n        oneofKind: \"selectRowPolicyId\";\n        /**\n         * @generated from protobuf field: string select_row_policy_id = 9\n         */\n        selectRowPolicyId: string;\n    } | {\n        oneofKind: \"olapDictionaryId\";\n        /**\n         * @generated from protobuf field: string olap_dictionary_id = 10\n         */\n        olapDictionaryId: string;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * @generated from protobuf message moose.proto.WebApp\n */\nexport interface WebApp {\n    /**\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * @generated from protobuf field: string mount_path = 2\n     */\n    mountPath: string;\n    /**\n     * @generated from protobuf field: optional moose.proto.WebAppMetadata metadata = 3\n     */\n    metadata?: WebAppMetadata;\n    /**\n     * Infrastructure components this web app reads data from.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pulls_data_from = 4\n     */\n    pullsDataFrom: InfrastructureSignature[];\n    /**\n     * Infrastructure components this web app writes data to.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pushes_data_to = 5\n     */\n    pushesDataTo: InfrastructureSignature[];\n}\n/**\n * @generated from protobuf message moose.proto.WebAppMetadata\n */\nexport interface WebAppMetadata {\n    /**\n     * @generated from protobuf field: optional string description = 1\n     */\n    description?: string;\n}\n/**\n * @generated from protobuf message moose.proto.Workflow\n */\nexport interface Workflow {\n    /**\n     * Unique workflow identifier\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * Cron schedule for automatic execution\n     *\n     * @generated from protobuf field: string schedule = 2\n     */\n    schedule: string;\n    /**\n     * Number of retry attempts on failure\n     *\n     * @generated from protobuf field: uint32 retries = 3\n     */\n    retries: number;\n    /**\n     * Workflow timeout\n     *\n     * @generated from protobuf field: string timeout = 4\n     */\n    timeout: string;\n    /**\n     * Programming language of the workflow\n     *\n     * @generated from protobuf field: string language = 5\n     */\n    language: string;\n    /**\n     * Infrastructure components this workflow reads data from.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pulls_data_from = 6\n     */\n    pullsDataFrom: InfrastructureSignature[];\n    /**\n     * Infrastructure components this workflow writes data to.\n     *\n     * @generated from protobuf field: repeated moose.proto.InfrastructureSignature pushes_data_to = 7\n     */\n    pushesDataTo: InfrastructureSignature[];\n}\n/**\n * Row-level security policy for ClickHouse\n *\n * @generated from protobuf message moose.proto.SelectRowPolicy\n */\nexport interface SelectRowPolicy {\n    /**\n     * Policy name\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * Tables the policy applies to (with optional per-table database)\n     *\n     * @generated from protobuf field: repeated moose.proto.TableReference tables = 2\n     */\n    tables: TableReference[];\n    /**\n     * Column to filter on\n     *\n     * @generated from protobuf field: string column = 3\n     */\n    column: string;\n    /**\n     * JWT claim name that provides the filter value\n     *\n     * @generated from protobuf field: string claim = 4\n     */\n    claim: string;\n}\n// --- ClickHouse Dictionary support ---\n\n/**\n * DictionaryColumn represents an attribute/column in a ClickHouse dictionary\n *\n * @generated from protobuf message moose.proto.DictionaryColumn\n */\nexport interface DictionaryColumn {\n    /**\n     * Column name\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * ClickHouse type string (e.g., \"UInt64\", \"String\", \"Nullable(String)\")\n     *\n     * @generated from protobuf field: string type_string = 2\n     */\n    typeString: string;\n    /**\n     * Default value expression (DEFAULT)\n     *\n     * @generated from protobuf field: optional string default_value = 3\n     */\n    defaultValue?: string;\n    /**\n     * Computed expression (EXPRESSION)\n     *\n     * @generated from protobuf field: optional string expression = 4\n     */\n    expression?: string;\n    /**\n     * IS_INJECTIVE attribute for optimized GROUP BY\n     *\n     * @generated from protobuf field: optional bool is_injective = 5\n     */\n    isInjective?: boolean;\n    /**\n     * IS_HIERARCHICAL attribute for parent-child lookups\n     *\n     * @generated from protobuf field: optional bool is_hierarchical = 6\n     */\n    isHierarchical?: boolean;\n    /**\n     * IS_OBJECT_ID attribute (MongoDB only)\n     *\n     * @generated from protobuf field: optional bool is_object_id = 7\n     */\n    isObjectId?: boolean;\n    /**\n     * Column comment\n     *\n     * @generated from protobuf field: optional string comment = 8\n     */\n    comment?: string;\n}\n/**\n * DictionaryTableSource — dictionary reads from a ClickHouse table\n *\n * @generated from protobuf message moose.proto.DictionaryTableSource\n */\nexport interface DictionaryTableSource {\n    /**\n     * Source table name\n     *\n     * @generated from protobuf field: string table = 1\n     */\n    table: string;\n    /**\n     * Source database (empty = default database)\n     *\n     * @generated from protobuf field: optional string database = 2\n     */\n    database?: string;\n    /**\n     * Optional WHERE clause for row filtering\n     *\n     * @generated from protobuf field: optional string where_clause = 3\n     */\n    whereClause?: string;\n    /**\n     * Optional query for checking if data has changed (triggers reload)\n     *\n     * @generated from protobuf field: optional string invalidate_query = 4\n     */\n    invalidateQuery?: string;\n}\n/**\n * DictionaryQuerySource — dictionary reads from an arbitrary SQL query\n *\n * @generated from protobuf message moose.proto.DictionaryQuerySource\n */\nexport interface DictionaryQuerySource {\n    /**\n     * The SELECT query\n     *\n     * @generated from protobuf field: string query = 1\n     */\n    query: string;\n    /**\n     * Optional query for checking if data has changed (triggers reload)\n     *\n     * @generated from protobuf field: optional string invalidate_query = 2\n     */\n    invalidateQuery?: string;\n}\n/**\n * DictionaryLayout — memory layout and storage model for the dictionary\n *\n * @generated from protobuf message moose.proto.DictionaryLayout\n */\nexport interface DictionaryLayout {\n    /**\n     * @generated from protobuf field: moose.proto.DictionaryLayout.Type type = 1\n     */\n    type: DictionaryLayout_Type;\n    /**\n     * Hashed / SparseHashed / ComplexKeyHashed / ComplexKeySparseHashed\n     *\n     * @generated from protobuf field: optional uint64 initial_array_size = 2\n     */\n    initialArraySize?: bigint;\n    /**\n     * @generated from protobuf field: optional double max_load_factor = 3\n     */\n    maxLoadFactor?: number;\n    /**\n     * HashedArray / ComplexKeyHashedArray\n     *\n     * @generated from protobuf field: optional uint32 shards = 4\n     */\n    shards?: number;\n    /**\n     * Cache / SsdCache / ComplexKeyCache / ComplexKeySsdCache\n     *\n     * @generated from protobuf field: optional uint64 size_in_cells = 5\n     */\n    sizeInCells?: bigint;\n    /**\n     * @generated from protobuf field: optional uint32 max_threads_for_updates = 6\n     */\n    maxThreadsForUpdates?: number;\n    /**\n     * SsdCache / ComplexKeySsdCache\n     *\n     * @generated from protobuf field: optional string ssd_path = 7\n     */\n    ssdPath?: string;\n    /**\n     * @generated from protobuf field: optional uint64 block_size = 8\n     */\n    blockSize?: bigint;\n    /**\n     * @generated from protobuf field: optional uint64 file_size = 9\n     */\n    fileSize?: bigint;\n    /**\n     * @generated from protobuf field: optional uint64 read_buffer_size = 10\n     */\n    readBufferSize?: bigint;\n    /**\n     * @generated from protobuf field: optional uint64 write_buffer_size = 11\n     */\n    writeBufferSize?: bigint;\n    /**\n     * @generated from protobuf field: optional uint64 max_stored_keys = 12\n     */\n    maxStoredKeys?: bigint;\n    /**\n     * IpTrie\n     *\n     * @generated from protobuf field: optional bool access_to_key_from_attributes = 13\n     */\n    accessToKeyFromAttributes?: boolean;\n    /**\n     * RangeHashed\n     *\n     * @generated from protobuf field: optional string range_lookup_strategy = 14\n     */\n    rangeLookupStrategy?: string;\n}\n/**\n * @generated from protobuf enum moose.proto.DictionaryLayout.Type\n */\nexport enum DictionaryLayout_Type {\n    /**\n     * @generated from protobuf enum value: FLAT = 0;\n     */\n    FLAT = 0,\n    /**\n     * @generated from protobuf enum value: HASHED = 1;\n     */\n    HASHED = 1,\n    /**\n     * @generated from protobuf enum value: SPARSE_HASHED = 2;\n     */\n    SPARSE_HASHED = 2,\n    /**\n     * @generated from protobuf enum value: HASHED_ARRAY = 3;\n     */\n    HASHED_ARRAY = 3,\n    /**\n     * @generated from protobuf enum value: RANGE_HASHED = 4;\n     */\n    RANGE_HASHED = 4,\n    /**\n     * @generated from protobuf enum value: CACHE = 5;\n     */\n    CACHE = 5,\n    /**\n     * @generated from protobuf enum value: SSD_CACHE = 6;\n     */\n    SSD_CACHE = 6,\n    /**\n     * @generated from protobuf enum value: DIRECT = 7;\n     */\n    DIRECT = 7,\n    /**\n     * @generated from protobuf enum value: IP_TRIE = 8;\n     */\n    IP_TRIE = 8,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_HASHED = 9;\n     */\n    COMPLEX_KEY_HASHED = 9,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_SPARSE_HASHED = 10;\n     */\n    COMPLEX_KEY_SPARSE_HASHED = 10,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_HASHED_ARRAY = 11;\n     */\n    COMPLEX_KEY_HASHED_ARRAY = 11,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_CACHE = 12;\n     */\n    COMPLEX_KEY_CACHE = 12,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_SSD_CACHE = 13;\n     */\n    COMPLEX_KEY_SSD_CACHE = 13,\n    /**\n     * @generated from protobuf enum value: COMPLEX_KEY_DIRECT = 14;\n     */\n    COMPLEX_KEY_DIRECT = 14\n}\n/**\n * DictionaryRangeLifetime — min/max seconds for range-based refresh\n *\n * @generated from protobuf message moose.proto.DictionaryRangeLifetime\n */\nexport interface DictionaryRangeLifetime {\n    /**\n     * @generated from protobuf field: uint64 min = 1\n     */\n    min: bigint;\n    /**\n     * @generated from protobuf field: uint64 max = 2\n     */\n    max: bigint;\n}\n/**\n * DictionaryLifetime — how often dictionary data is refreshed\n *\n * @generated from protobuf message moose.proto.DictionaryLifetime\n */\nexport interface DictionaryLifetime {\n    /**\n     * @generated from protobuf oneof: t\n     */\n    t: {\n        oneofKind: \"staticLifetime\";\n        /**\n         * Static: LIFETIME(0) — never automatically refresh\n         *\n         * @generated from protobuf field: bool static_lifetime = 1\n         */\n        staticLifetime: boolean;\n    } | {\n        oneofKind: \"single\";\n        /**\n         * Single: LIFETIME(N) — refresh every N seconds\n         *\n         * @generated from protobuf field: uint64 single = 2\n         */\n        single: bigint;\n    } | {\n        oneofKind: \"range\";\n        /**\n         * Range: LIFETIME(MIN N MAX M) — refresh between min and max seconds\n         *\n         * @generated from protobuf field: moose.proto.DictionaryRangeLifetime range = 3\n         */\n        range: DictionaryRangeLifetime;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * DictionaryHttpSource — external HTTP source\n *\n * @generated from protobuf message moose.proto.DictionaryHttpSource\n */\nexport interface DictionaryHttpSource {\n    /**\n     * Full URL of the HTTP endpoint serving dictionary data\n     *\n     * @generated from protobuf field: string url = 1\n     */\n    url: string;\n    /**\n     * ClickHouse input format (e.g. CSV, JSONEachRow, TSV)\n     *\n     * @generated from protobuf field: string format = 2\n     */\n    format: string;\n    /**\n     * HTTP method override; defaults to GET when absent\n     *\n     * @generated from protobuf field: optional string method = 3\n     */\n    method?: string;\n    /**\n     * Optional SQL WHERE clause appended to the source query\n     *\n     * @generated from protobuf field: optional string where_clause = 4\n     */\n    whereClause?: string;\n}\n/**\n * DictionaryClickHouseSource — remote ClickHouse server as source\n *\n * @generated from protobuf message moose.proto.DictionaryClickHouseSource\n */\nexport interface DictionaryClickHouseSource {\n    /**\n     * Hostname or IP of the remote ClickHouse server\n     *\n     * @generated from protobuf field: string host = 1\n     */\n    host: string;\n    /**\n     * TCP port of the remote ClickHouse server\n     *\n     * @generated from protobuf field: uint32 port = 2\n     */\n    port: number;\n    /**\n     * Username for authentication\n     *\n     * @generated from protobuf field: string user = 3\n     */\n    user: string;\n    /**\n     * Password for authentication (masked via strip_dict_metadata() before proto/Redis serialization; not stored in plaintext)\n     *\n     * @generated from protobuf field: string password = 4\n     */\n    password: string;\n    /**\n     * Database name on the remote server\n     *\n     * @generated from protobuf field: string db = 5\n     */\n    db: string;\n    /**\n     * Table name on the remote server\n     *\n     * @generated from protobuf field: string table = 6\n     */\n    table: string;\n    /**\n     * Custom SQL query; overrides table when present\n     *\n     * @generated from protobuf field: optional string query = 7\n     */\n    query?: string;\n    /**\n     * SQL WHERE clause appended to the generated SELECT\n     *\n     * @generated from protobuf field: optional string where_clause = 8\n     */\n    whereClause?: string;\n    /**\n     * Query whose result change triggers dictionary reload\n     *\n     * @generated from protobuf field: optional string invalidate_query = 9\n     */\n    invalidateQuery?: string;\n}\n/**\n * DictionaryMysqlSource — MySQL database as source\n *\n * @generated from protobuf message moose.proto.DictionaryMysqlSource\n */\nexport interface DictionaryMysqlSource {\n    /**\n     * Hostname or IP of the MySQL server\n     *\n     * @generated from protobuf field: string host = 1\n     */\n    host: string;\n    /**\n     * TCP port of the MySQL server\n     *\n     * @generated from protobuf field: uint32 port = 2\n     */\n    port: number;\n    /**\n     * Username for authentication\n     *\n     * @generated from protobuf field: string user = 3\n     */\n    user: string;\n    /**\n     * Password for authentication (masked via strip_dict_metadata() before proto/Redis serialization; not stored in plaintext)\n     *\n     * @generated from protobuf field: string password = 4\n     */\n    password: string;\n    /**\n     * Database name\n     *\n     * @generated from protobuf field: string db = 5\n     */\n    db: string;\n    /**\n     * Table name\n     *\n     * @generated from protobuf field: string table = 6\n     */\n    table: string;\n    /**\n     * Custom SQL query; overrides table when present\n     *\n     * @generated from protobuf field: optional string query = 7\n     */\n    query?: string;\n    /**\n     * SQL WHERE clause appended to the generated SELECT\n     *\n     * @generated from protobuf field: optional string where_clause = 8\n     */\n    whereClause?: string;\n    /**\n     * Query whose result change triggers dictionary reload\n     *\n     * @generated from protobuf field: optional string invalidate_query = 9\n     */\n    invalidateQuery?: string;\n}\n/**\n * DictionaryPostgresqlSource — PostgreSQL database as source\n *\n * @generated from protobuf message moose.proto.DictionaryPostgresqlSource\n */\nexport interface DictionaryPostgresqlSource {\n    /**\n     * Hostname or IP of the PostgreSQL server\n     *\n     * @generated from protobuf field: string host = 1\n     */\n    host: string;\n    /**\n     * TCP port of the PostgreSQL server\n     *\n     * @generated from protobuf field: uint32 port = 2\n     */\n    port: number;\n    /**\n     * Username for authentication\n     *\n     * @generated from protobuf field: string user = 3\n     */\n    user: string;\n    /**\n     * Password for authentication (masked via strip_dict_metadata() before proto/Redis serialization; not stored in plaintext)\n     *\n     * @generated from protobuf field: string password = 4\n     */\n    password: string;\n    /**\n     * Database name\n     *\n     * @generated from protobuf field: string db = 5\n     */\n    db: string;\n    /**\n     * Table name\n     *\n     * @generated from protobuf field: string table = 6\n     */\n    table: string;\n    /**\n     * Custom SQL query; overrides table when present\n     *\n     * @generated from protobuf field: optional string query = 7\n     */\n    query?: string;\n    /**\n     * SQL WHERE clause appended to the generated SELECT\n     *\n     * @generated from protobuf field: optional string where_clause = 8\n     */\n    whereClause?: string;\n    /**\n     * Query whose result change triggers dictionary reload\n     *\n     * @generated from protobuf field: optional string invalidate_query = 9\n     */\n    invalidateQuery?: string;\n}\n/**\n * DictionaryRedisSource — Redis as source\n *\n * @generated from protobuf message moose.proto.DictionaryRedisSource\n */\nexport interface DictionaryRedisSource {\n    /**\n     * Hostname or IP of the Redis server\n     *\n     * @generated from protobuf field: string host = 1\n     */\n    host: string;\n    /**\n     * TCP port of the Redis server\n     *\n     * @generated from protobuf field: uint32 port = 2\n     */\n    port: number;\n    /**\n     * Optional password for Redis AUTH command\n     *\n     * @generated from protobuf field: optional string password = 3\n     */\n    password?: string;\n    /**\n     * Redis database index (0-based); defaults to 0 when absent\n     *\n     * @generated from protobuf field: optional uint32 db_index = 4\n     */\n    dbIndex?: number;\n    /**\n     * Storage type: simple, hash, range_hashed, etc.\n     *\n     * @generated from protobuf field: string storage_type = 5\n     */\n    storageType: string;\n}\n/**\n * DictionaryMongoDbSource — MongoDB as source\n *\n * @generated from protobuf message moose.proto.DictionaryMongoDbSource\n */\nexport interface DictionaryMongoDbSource {\n    /**\n     * Hostname or IP of the MongoDB server\n     *\n     * @generated from protobuf field: string host = 1\n     */\n    host: string;\n    /**\n     * TCP port of the MongoDB server\n     *\n     * @generated from protobuf field: uint32 port = 2\n     */\n    port: number;\n    /**\n     * Username for authentication\n     *\n     * @generated from protobuf field: string user = 3\n     */\n    user: string;\n    /**\n     * Password for authentication (masked via strip_dict_metadata() before proto/Redis serialization; not stored in plaintext)\n     *\n     * @generated from protobuf field: string password = 4\n     */\n    password: string;\n    /**\n     * Database name\n     *\n     * @generated from protobuf field: string db = 5\n     */\n    db: string;\n    /**\n     * Collection name\n     *\n     * @generated from protobuf field: string collection = 6\n     */\n    collection: string;\n}\n/**\n * DictionaryExecutableSource — external executable as source\n *\n * @generated from protobuf message moose.proto.DictionaryExecutableSource\n */\nexport interface DictionaryExecutableSource {\n    /**\n     * Shell command to execute; must emit records on stdout\n     *\n     * @generated from protobuf field: string command = 1\n     */\n    command: string;\n    /**\n     * ClickHouse input format of the executable output (e.g. TabSeparated)\n     *\n     * @generated from protobuf field: string format = 2\n     */\n    format: string;\n    /**\n     * When true, the first column is used implicitly as the dictionary key\n     *\n     * @generated from protobuf field: optional bool implicit_key = 3\n     */\n    implicitKey?: boolean;\n}\n/**\n * DictionaryS3Source — S3 object storage as source\n *\n * @generated from protobuf message moose.proto.DictionaryS3Source\n */\nexport interface DictionaryS3Source {\n    /**\n     * S3 URL (s3://bucket/path or https://endpoint/bucket/path)\n     *\n     * @generated from protobuf field: string url = 1\n     */\n    url: string;\n    /**\n     * ClickHouse input format of the S3 object (e.g. Parquet, CSV)\n     *\n     * @generated from protobuf field: string format = 2\n     */\n    format: string;\n    /**\n     * AWS access key ID; omit to use instance profile / environment credentials\n     *\n     * @generated from protobuf field: optional string access_key_id = 3\n     */\n    accessKeyId?: string;\n    /**\n     * AWS secret access key (masked via strip_dict_metadata() before proto/Redis serialization; not stored in plaintext)\n     *\n     * @generated from protobuf field: optional string secret_access_key = 4\n     */\n    secretAccessKey?: string;\n}\n/**\n * DictionaryExternalSource — union of all supported external sources\n *\n * @generated from protobuf message moose.proto.DictionaryExternalSource\n */\nexport interface DictionaryExternalSource {\n    /**\n     * @generated from protobuf oneof: t\n     */\n    t: {\n        oneofKind: \"http\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryHttpSource http = 1\n         */\n        http: DictionaryHttpSource;\n    } | {\n        oneofKind: \"clickhouse\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryClickHouseSource clickhouse = 2\n         */\n        clickhouse: DictionaryClickHouseSource;\n    } | {\n        oneofKind: \"mysql\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryMysqlSource mysql = 3\n         */\n        mysql: DictionaryMysqlSource;\n    } | {\n        oneofKind: \"postgresql\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryPostgresqlSource postgresql = 4\n         */\n        postgresql: DictionaryPostgresqlSource;\n    } | {\n        oneofKind: \"redis\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryRedisSource redis = 5\n         */\n        redis: DictionaryRedisSource;\n    } | {\n        oneofKind: \"mongodb\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryMongoDbSource mongodb = 6\n         */\n        mongodb: DictionaryMongoDbSource;\n    } | {\n        oneofKind: \"executable\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryExecutableSource executable = 7\n         */\n        executable: DictionaryExecutableSource;\n    } | {\n        oneofKind: \"s3\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryS3Source s3 = 8\n         */\n        s3: DictionaryS3Source;\n    } | {\n        oneofKind: undefined;\n    };\n}\n/**\n * OlapDictionary — a ClickHouse Dictionary definition\n *\n * @generated from protobuf message moose.proto.OlapDictionary\n */\nexport interface OlapDictionary {\n    /**\n     * Dictionary name\n     *\n     * @generated from protobuf field: string name = 1\n     */\n    name: string;\n    /**\n     * Database where the dictionary is created (empty = default database)\n     *\n     * @generated from protobuf field: optional string database = 2\n     */\n    database?: string;\n    /**\n     * Optional ON CLUSTER name for distributed deployments\n     *\n     * @generated from protobuf field: optional string cluster_name = 3\n     */\n    clusterName?: string;\n    /**\n     * Source: exactly one must be set\n     *\n     * @generated from protobuf oneof: source\n     */\n    source: {\n        oneofKind: \"tableSource\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryTableSource table_source = 4\n         */\n        tableSource: DictionaryTableSource;\n    } | {\n        oneofKind: \"querySource\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryQuerySource query_source = 5\n         */\n        querySource: DictionaryQuerySource;\n    } | {\n        oneofKind: \"externalSource\";\n        /**\n         * @generated from protobuf field: moose.proto.DictionaryExternalSource external_source = 6\n         */\n        externalSource: DictionaryExternalSource;\n    } | {\n        oneofKind: undefined;\n    };\n    /**\n     * Primary key column names (single-column = simple key, multi-column = complex key)\n     *\n     * @generated from protobuf field: repeated string primary_key = 7\n     */\n    primaryKey: string[];\n    /**\n     * Dictionary attribute columns\n     *\n     * @generated from protobuf field: repeated moose.proto.DictionaryColumn columns = 8\n     */\n    columns: DictionaryColumn[];\n    /**\n     * Layout type and configuration\n     *\n     * @generated from protobuf field: moose.proto.DictionaryLayout layout = 9\n     */\n    layout?: DictionaryLayout;\n    /**\n     * Lifetime / refresh policy\n     *\n     * @generated from protobuf field: moose.proto.DictionaryLifetime lifetime = 10\n     */\n    lifetime?: DictionaryLifetime;\n    /**\n     * Optional invalidation query (checked before reload; if unchanged, skip)\n     *\n     * @generated from protobuf field: optional string invalidate_query = 11\n     */\n    invalidateQuery?: string;\n    /**\n     * Dictionary-level settings map\n     *\n     * @generated from protobuf field: map<string, string> settings = 12\n     */\n    settings: {\n        [key: string]: string;\n    };\n    /**\n     * Optional COMMENT clause\n     *\n     * @generated from protobuf field: optional string comment = 13\n     */\n    comment?: string;\n    /**\n     * Lifecycle management policy\n     *\n     * @generated from protobuf field: moose.proto.LifeCycle life_cycle = 14\n     */\n    lifeCycle: LifeCycle;\n    /**\n     * Optional metadata (description, source file)\n     *\n     * @generated from protobuf field: optional moose.proto.Metadata metadata = 15\n     */\n    metadata?: Metadata;\n    /**\n     * Optional version string (e.g. \"0.1\"). When set, the version suffix is baked\n     * into `name` (e.g. \"my_dict_0_1\") so versioned dictionaries are distinct objects.\n     *\n     * @generated from protobuf field: optional string version = 16\n     */\n    version?: string;\n}\n/**\n * @deprecated\n * @generated from protobuf enum moose.proto.EndpointIngestionFormat\n */\nexport enum EndpointIngestionFormat {\n    /**\n     * @generated from protobuf enum value: JSON = 0;\n     */\n    JSON = 0,\n    /**\n     * @generated from protobuf enum value: JSON_ARRAY = 1;\n     */\n    JSON_ARRAY = 1\n}\n/**\n * @generated from protobuf enum moose.proto.Method\n */\nexport enum Method {\n    /**\n     * @generated from protobuf enum value: GET = 0;\n     */\n    GET = 0,\n    /**\n     * @generated from protobuf enum value: POST = 1;\n     */\n    POST = 1,\n    /**\n     * @generated from protobuf enum value: PUT = 2;\n     */\n    PUT = 2,\n    /**\n     * @generated from protobuf enum value: DELETE = 3;\n     */\n    DELETE = 3\n}\n/**\n * @generated from protobuf enum moose.proto.SimpleColumnType\n */\nexport enum SimpleColumnType {\n    /**\n     * @generated from protobuf enum value: STRING = 0;\n     */\n    STRING = 0,\n    /**\n     * @generated from protobuf enum value: BOOLEAN = 1;\n     */\n    BOOLEAN = 1,\n    /**\n     * @deprecated\n     * @generated from protobuf enum value: INT = 2 [deprecated = true];\n     */\n    INT = 2,\n    /**\n     * @generated from protobuf enum value: BIGINT = 3;\n     */\n    BIGINT = 3,\n    /**\n     * @deprecated\n     * @generated from protobuf enum value: FLOAT = 4 [deprecated = true];\n     */\n    FLOAT = 4,\n    /**\n     * @deprecated\n     * @generated from protobuf enum value: DECIMAL = 5 [deprecated = true];\n     */\n    DECIMAL = 5,\n    /**\n     * in clickhouse, this is the 32-bit date\n     * otherwise, see DateType where the precision can be specified\n     *\n     * @generated from protobuf enum value: DATETIME = 6;\n     */\n    DATETIME = 6,\n    /**\n     * Framework Date (standard) -> ClickHouse Date32 (4 bytes)\n     *\n     * @generated from protobuf enum value: DATE = 7;\n     */\n    DATE = 7,\n    /**\n     * Framework Date16 (memory-optimized) -> ClickHouse Date (2 bytes)\n     *\n     * @generated from protobuf enum value: DATE16 = 8;\n     */\n    DATE16 = 8,\n    /**\n     * @generated from protobuf enum value: IPV4 = 9;\n     */\n    IPV4 = 9,\n    /**\n     * @generated from protobuf enum value: IPV6 = 10;\n     */\n    IPV6 = 10,\n    /**\n     * @generated from protobuf enum value: UUID_TYPE = 13;\n     */\n    UUID_TYPE = 13,\n    /**\n     * @generated from protobuf enum value: JSON_COLUMN = 14;\n     */\n    JSON_COLUMN = 14,\n    /**\n     * @generated from protobuf enum value: BYTES = 15;\n     */\n    BYTES = 15,\n    /**\n     * Geometry types\n     *\n     * @generated from protobuf enum value: POINT = 16;\n     */\n    POINT = 16,\n    /**\n     * @generated from protobuf enum value: RING = 17;\n     */\n    RING = 17,\n    /**\n     * @generated from protobuf enum value: LINE_STRING = 18;\n     */\n    LINE_STRING = 18,\n    /**\n     * @generated from protobuf enum value: MULTI_LINE_STRING = 19;\n     */\n    MULTI_LINE_STRING = 19,\n    /**\n     * @generated from protobuf enum value: POLYGON = 20;\n     */\n    POLYGON = 20,\n    /**\n     * @generated from protobuf enum value: MULTI_POLYGON = 21;\n     */\n    MULTI_POLYGON = 21\n}\n/**\n * @generated from protobuf enum moose.proto.IntType\n */\nexport enum IntType {\n    /**\n     * this is what we defaulted to\n     *\n     * @generated from protobuf enum value: INT64 = 0;\n     */\n    INT64 = 0,\n    /**\n     * @generated from protobuf enum value: INT8 = 1;\n     */\n    INT8 = 1,\n    /**\n     * @generated from protobuf enum value: INT16 = 2;\n     */\n    INT16 = 2,\n    /**\n     * @generated from protobuf enum value: INT32 = 3;\n     */\n    INT32 = 3,\n    /**\n     * @generated from protobuf enum value: INT128 = 4;\n     */\n    INT128 = 4,\n    /**\n     * @generated from protobuf enum value: INT256 = 5;\n     */\n    INT256 = 5,\n    /**\n     * @generated from protobuf enum value: UINT8 = 6;\n     */\n    UINT8 = 6,\n    /**\n     * @generated from protobuf enum value: UINT16 = 7;\n     */\n    UINT16 = 7,\n    /**\n     * @generated from protobuf enum value: UINT32 = 8;\n     */\n    UINT32 = 8,\n    /**\n     * @generated from protobuf enum value: UINT64 = 9;\n     */\n    UINT64 = 9,\n    /**\n     * @generated from protobuf enum value: UINT128 = 10;\n     */\n    UINT128 = 10,\n    /**\n     * @generated from protobuf enum value: UINT256 = 11;\n     */\n    UINT256 = 11\n}\n/**\n * @generated from protobuf enum moose.proto.FloatType\n */\nexport enum FloatType {\n    /**\n     * @generated from protobuf enum value: FLOAT64 = 0;\n     */\n    FLOAT64 = 0,\n    /**\n     * @generated from protobuf enum value: FLOAT32 = 1;\n     */\n    FLOAT32 = 1\n}\n/**\n * @generated from protobuf enum moose.proto.PrimitiveTypes\n */\nexport enum PrimitiveTypes {\n    /**\n     * @generated from protobuf enum value: DATA_MODEL = 0;\n     */\n    DATA_MODEL = 0,\n    /**\n     * @generated from protobuf enum value: FUNCTION = 1;\n     */\n    FUNCTION = 1,\n    /**\n     * @generated from protobuf enum value: DB_BLOCK = 2;\n     */\n    DB_BLOCK = 2,\n    /**\n     * @generated from protobuf enum value: CONSUMPTION_API = 3;\n     */\n    CONSUMPTION_API = 3\n}\n/**\n * @generated from protobuf enum moose.proto.LifeCycle\n */\nexport enum LifeCycle {\n    /**\n     * @generated from protobuf enum value: FULLY_MANAGED = 0;\n     */\n    FULLY_MANAGED = 0,\n    /**\n     * @generated from protobuf enum value: DELETION_PROTECTED = 1;\n     */\n    DELETION_PROTECTED = 1,\n    /**\n     * @generated from protobuf enum value: EXTERNALLY_MANAGED = 2;\n     */\n    EXTERNALLY_MANAGED = 2\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass InfrastructureMap$Type extends MessageType<InfrastructureMap> {\n    constructor() {\n        super(\"moose.proto.InfrastructureMap\", [\n            { no: 1, name: \"topics\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Topic } },\n            { no: 2, name: \"api_endpoints\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => ApiEndpoint } },\n            { no: 3, name: \"tables\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Table } },\n            { no: 4, name: \"dmv1_views\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Dmv1View } },\n            { no: 5, name: \"topic_to_table_sync_processes\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => TopicToTableSyncProcess } },\n            { no: 6, name: \"topic_to_topic_sync_processes\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => TopicToTopicSyncProcess } },\n            { no: 7, name: \"function_processes\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => FunctionProcess } },\n            { no: 10, name: \"initial_data_loads\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => InitialDataLoad } },\n            { no: 11, name: \"orchestration_workers\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => OrchestrationWorker } },\n            { no: 12, name: \"sql_resources\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => SqlResource } },\n            { no: 13, name: \"web_apps\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => WebApp } },\n            { no: 19, name: \"moose_version\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 15, name: \"default_database\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 16, name: \"materialized_views\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => MaterializedView } },\n            { no: 17, name: \"views\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => View } },\n            { no: 18, name: \"workflows\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => Workflow } },\n            { no: 20, name: \"select_row_policies\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => SelectRowPolicy } },\n            { no: 21, name: \"olap_dictionaries\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"message\", T: () => OlapDictionary } }\n        ]);\n    }\n    create(value?: PartialMessage<InfrastructureMap>): InfrastructureMap {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.topics = {};\n        message.apiEndpoints = {};\n        message.tables = {};\n        message.dmv1Views = {};\n        message.topicToTableSyncProcesses = {};\n        message.topicToTopicSyncProcesses = {};\n        message.functionProcesses = {};\n        message.initialDataLoads = {};\n        message.orchestrationWorkers = {};\n        message.sqlResources = {};\n        message.webApps = {};\n        message.mooseVersion = \"\";\n        message.defaultDatabase = \"\";\n        message.materializedViews = {};\n        message.views = {};\n        message.workflows = {};\n        message.selectRowPolicies = {};\n        message.olapDictionaries = {};\n        if (value !== undefined)\n            reflectionMergePartial<InfrastructureMap>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InfrastructureMap): InfrastructureMap {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* map<string, moose.proto.Topic> topics */ 1:\n                    this.binaryReadMap1(message.topics, reader, options);\n                    break;\n                case /* map<string, moose.proto.ApiEndpoint> api_endpoints */ 2:\n                    this.binaryReadMap2(message.apiEndpoints, reader, options);\n                    break;\n                case /* map<string, moose.proto.Table> tables */ 3:\n                    this.binaryReadMap3(message.tables, reader, options);\n                    break;\n                case /* map<string, moose.proto.Dmv1View> dmv1_views */ 4:\n                    this.binaryReadMap4(message.dmv1Views, reader, options);\n                    break;\n                case /* map<string, moose.proto.TopicToTableSyncProcess> topic_to_table_sync_processes */ 5:\n                    this.binaryReadMap5(message.topicToTableSyncProcesses, reader, options);\n                    break;\n                case /* map<string, moose.proto.TopicToTopicSyncProcess> topic_to_topic_sync_processes */ 6:\n                    this.binaryReadMap6(message.topicToTopicSyncProcesses, reader, options);\n                    break;\n                case /* map<string, moose.proto.FunctionProcess> function_processes */ 7:\n                    this.binaryReadMap7(message.functionProcesses, reader, options);\n                    break;\n                case /* map<string, moose.proto.InitialDataLoad> initial_data_loads */ 10:\n                    this.binaryReadMap10(message.initialDataLoads, reader, options);\n                    break;\n                case /* map<string, moose.proto.OrchestrationWorker> orchestration_workers */ 11:\n                    this.binaryReadMap11(message.orchestrationWorkers, reader, options);\n                    break;\n                case /* map<string, moose.proto.SqlResource> sql_resources */ 12:\n                    this.binaryReadMap12(message.sqlResources, reader, options);\n                    break;\n                case /* map<string, moose.proto.WebApp> web_apps */ 13:\n                    this.binaryReadMap13(message.webApps, reader, options);\n                    break;\n                case /* string moose_version */ 19:\n                    message.mooseVersion = reader.string();\n                    break;\n                case /* string default_database */ 15:\n                    message.defaultDatabase = reader.string();\n                    break;\n                case /* map<string, moose.proto.MaterializedView> materialized_views */ 16:\n                    this.binaryReadMap16(message.materializedViews, reader, options);\n                    break;\n                case /* map<string, moose.proto.View> views */ 17:\n                    this.binaryReadMap17(message.views, reader, options);\n                    break;\n                case /* map<string, moose.proto.Workflow> workflows */ 18:\n                    this.binaryReadMap18(message.workflows, reader, options);\n                    break;\n                case /* map<string, moose.proto.SelectRowPolicy> select_row_policies */ 20:\n                    this.binaryReadMap20(message.selectRowPolicies, reader, options);\n                    break;\n                case /* map<string, moose.proto.OlapDictionary> olap_dictionaries */ 21:\n                    this.binaryReadMap21(message.olapDictionaries, reader, options);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    private binaryReadMap1(map: InfrastructureMap[\"topics\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"topics\"] | undefined, val: InfrastructureMap[\"topics\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = Topic.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.topics\");\n            }\n        }\n        map[key ?? \"\"] = val ?? Topic.create();\n    }\n    private binaryReadMap2(map: InfrastructureMap[\"apiEndpoints\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"apiEndpoints\"] | undefined, val: InfrastructureMap[\"apiEndpoints\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = ApiEndpoint.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.api_endpoints\");\n            }\n        }\n        map[key ?? \"\"] = val ?? ApiEndpoint.create();\n    }\n    private binaryReadMap3(map: InfrastructureMap[\"tables\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"tables\"] | undefined, val: InfrastructureMap[\"tables\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = Table.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.tables\");\n            }\n        }\n        map[key ?? \"\"] = val ?? Table.create();\n    }\n    private binaryReadMap4(map: InfrastructureMap[\"dmv1Views\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"dmv1Views\"] | undefined, val: InfrastructureMap[\"dmv1Views\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = Dmv1View.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.dmv1_views\");\n            }\n        }\n        map[key ?? \"\"] = val ?? Dmv1View.create();\n    }\n    private binaryReadMap5(map: InfrastructureMap[\"topicToTableSyncProcesses\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"topicToTableSyncProcesses\"] | undefined, val: InfrastructureMap[\"topicToTableSyncProcesses\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = TopicToTableSyncProcess.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.topic_to_table_sync_processes\");\n            }\n        }\n        map[key ?? \"\"] = val ?? TopicToTableSyncProcess.create();\n    }\n    private binaryReadMap6(map: InfrastructureMap[\"topicToTopicSyncProcesses\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"topicToTopicSyncProcesses\"] | undefined, val: InfrastructureMap[\"topicToTopicSyncProcesses\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = TopicToTopicSyncProcess.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.topic_to_topic_sync_processes\");\n            }\n        }\n        map[key ?? \"\"] = val ?? TopicToTopicSyncProcess.create();\n    }\n    private binaryReadMap7(map: InfrastructureMap[\"functionProcesses\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"functionProcesses\"] | undefined, val: InfrastructureMap[\"functionProcesses\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = FunctionProcess.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.function_processes\");\n            }\n        }\n        map[key ?? \"\"] = val ?? FunctionProcess.create();\n    }\n    private binaryReadMap10(map: InfrastructureMap[\"initialDataLoads\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"initialDataLoads\"] | undefined, val: InfrastructureMap[\"initialDataLoads\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = InitialDataLoad.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.initial_data_loads\");\n            }\n        }\n        map[key ?? \"\"] = val ?? InitialDataLoad.create();\n    }\n    private binaryReadMap11(map: InfrastructureMap[\"orchestrationWorkers\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"orchestrationWorkers\"] | undefined, val: InfrastructureMap[\"orchestrationWorkers\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = OrchestrationWorker.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.orchestration_workers\");\n            }\n        }\n        map[key ?? \"\"] = val ?? OrchestrationWorker.create();\n    }\n    private binaryReadMap12(map: InfrastructureMap[\"sqlResources\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"sqlResources\"] | undefined, val: InfrastructureMap[\"sqlResources\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = SqlResource.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.sql_resources\");\n            }\n        }\n        map[key ?? \"\"] = val ?? SqlResource.create();\n    }\n    private binaryReadMap13(map: InfrastructureMap[\"webApps\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"webApps\"] | undefined, val: InfrastructureMap[\"webApps\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = WebApp.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.web_apps\");\n            }\n        }\n        map[key ?? \"\"] = val ?? WebApp.create();\n    }\n    private binaryReadMap16(map: InfrastructureMap[\"materializedViews\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"materializedViews\"] | undefined, val: InfrastructureMap[\"materializedViews\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = MaterializedView.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.materialized_views\");\n            }\n        }\n        map[key ?? \"\"] = val ?? MaterializedView.create();\n    }\n    private binaryReadMap17(map: InfrastructureMap[\"views\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"views\"] | undefined, val: InfrastructureMap[\"views\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = View.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.views\");\n            }\n        }\n        map[key ?? \"\"] = val ?? View.create();\n    }\n    private binaryReadMap18(map: InfrastructureMap[\"workflows\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"workflows\"] | undefined, val: InfrastructureMap[\"workflows\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = Workflow.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.workflows\");\n            }\n        }\n        map[key ?? \"\"] = val ?? Workflow.create();\n    }\n    private binaryReadMap20(map: InfrastructureMap[\"selectRowPolicies\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"selectRowPolicies\"] | undefined, val: InfrastructureMap[\"selectRowPolicies\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = SelectRowPolicy.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.select_row_policies\");\n            }\n        }\n        map[key ?? \"\"] = val ?? SelectRowPolicy.create();\n    }\n    private binaryReadMap21(map: InfrastructureMap[\"olapDictionaries\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof InfrastructureMap[\"olapDictionaries\"] | undefined, val: InfrastructureMap[\"olapDictionaries\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = OlapDictionary.internalBinaryRead(reader, reader.uint32(), options);\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.InfrastructureMap.olap_dictionaries\");\n            }\n        }\n        map[key ?? \"\"] = val ?? OlapDictionary.create();\n    }\n    internalBinaryWrite(message: InfrastructureMap, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* map<string, moose.proto.Topic> topics = 1; */\n        for (let k of globalThis.Object.keys(message.topics)) {\n            writer.tag(1, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            Topic.internalBinaryWrite(message.topics[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.ApiEndpoint> api_endpoints = 2; */\n        for (let k of globalThis.Object.keys(message.apiEndpoints)) {\n            writer.tag(2, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            ApiEndpoint.internalBinaryWrite(message.apiEndpoints[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.Table> tables = 3; */\n        for (let k of globalThis.Object.keys(message.tables)) {\n            writer.tag(3, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            Table.internalBinaryWrite(message.tables[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.Dmv1View> dmv1_views = 4; */\n        for (let k of globalThis.Object.keys(message.dmv1Views)) {\n            writer.tag(4, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            Dmv1View.internalBinaryWrite(message.dmv1Views[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.TopicToTableSyncProcess> topic_to_table_sync_processes = 5; */\n        for (let k of globalThis.Object.keys(message.topicToTableSyncProcesses)) {\n            writer.tag(5, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            TopicToTableSyncProcess.internalBinaryWrite(message.topicToTableSyncProcesses[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.TopicToTopicSyncProcess> topic_to_topic_sync_processes = 6; */\n        for (let k of globalThis.Object.keys(message.topicToTopicSyncProcesses)) {\n            writer.tag(6, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            TopicToTopicSyncProcess.internalBinaryWrite(message.topicToTopicSyncProcesses[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.FunctionProcess> function_processes = 7; */\n        for (let k of globalThis.Object.keys(message.functionProcesses)) {\n            writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            FunctionProcess.internalBinaryWrite(message.functionProcesses[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.InitialDataLoad> initial_data_loads = 10; */\n        for (let k of globalThis.Object.keys(message.initialDataLoads)) {\n            writer.tag(10, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            InitialDataLoad.internalBinaryWrite(message.initialDataLoads[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.OrchestrationWorker> orchestration_workers = 11; */\n        for (let k of globalThis.Object.keys(message.orchestrationWorkers)) {\n            writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            OrchestrationWorker.internalBinaryWrite(message.orchestrationWorkers[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.SqlResource> sql_resources = 12; */\n        for (let k of globalThis.Object.keys(message.sqlResources)) {\n            writer.tag(12, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            SqlResource.internalBinaryWrite(message.sqlResources[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.WebApp> web_apps = 13; */\n        for (let k of globalThis.Object.keys(message.webApps)) {\n            writer.tag(13, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            WebApp.internalBinaryWrite(message.webApps[k], writer, options);\n            writer.join().join();\n        }\n        /* string default_database = 15; */\n        if (message.defaultDatabase !== \"\")\n            writer.tag(15, WireType.LengthDelimited).string(message.defaultDatabase);\n        /* map<string, moose.proto.MaterializedView> materialized_views = 16; */\n        for (let k of globalThis.Object.keys(message.materializedViews)) {\n            writer.tag(16, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            MaterializedView.internalBinaryWrite(message.materializedViews[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.View> views = 17; */\n        for (let k of globalThis.Object.keys(message.views)) {\n            writer.tag(17, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            View.internalBinaryWrite(message.views[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.Workflow> workflows = 18; */\n        for (let k of globalThis.Object.keys(message.workflows)) {\n            writer.tag(18, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            Workflow.internalBinaryWrite(message.workflows[k], writer, options);\n            writer.join().join();\n        }\n        /* string moose_version = 19; */\n        if (message.mooseVersion !== \"\")\n            writer.tag(19, WireType.LengthDelimited).string(message.mooseVersion);\n        /* map<string, moose.proto.SelectRowPolicy> select_row_policies = 20; */\n        for (let k of globalThis.Object.keys(message.selectRowPolicies)) {\n            writer.tag(20, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            SelectRowPolicy.internalBinaryWrite(message.selectRowPolicies[k], writer, options);\n            writer.join().join();\n        }\n        /* map<string, moose.proto.OlapDictionary> olap_dictionaries = 21; */\n        for (let k of globalThis.Object.keys(message.olapDictionaries)) {\n            writer.tag(21, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);\n            writer.tag(2, WireType.LengthDelimited).fork();\n            OlapDictionary.internalBinaryWrite(message.olapDictionaries[k], writer, options);\n            writer.join().join();\n        }\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.InfrastructureMap\n */\nexport const InfrastructureMap = new InfrastructureMap$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SourceLocation$Type extends MessageType<SourceLocation> {\n    constructor() {\n        super(\"moose.proto.SourceLocation\", [\n            { no: 1, name: \"file\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<SourceLocation>): SourceLocation {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.file = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<SourceLocation>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SourceLocation): SourceLocation {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string file */ 1:\n                    message.file = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SourceLocation, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string file = 1; */\n        if (message.file !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.file);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SourceLocation\n */\nexport const SourceLocation = new SourceLocation$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Metadata$Type extends MessageType<Metadata> {\n    constructor() {\n        super(\"moose.proto.Metadata\", [\n            { no: 1, name: \"description\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"source\", kind: \"message\", T: () => SourceLocation }\n        ]);\n    }\n    create(value?: PartialMessage<Metadata>): Metadata {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.description = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<Metadata>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Metadata): Metadata {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string description */ 1:\n                    message.description = reader.string();\n                    break;\n                case /* optional moose.proto.SourceLocation source */ 2:\n                    message.source = SourceLocation.internalBinaryRead(reader, reader.uint32(), options, message.source);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Metadata, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string description = 1; */\n        if (message.description !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.description);\n        /* optional moose.proto.SourceLocation source = 2; */\n        if (message.source)\n            SourceLocation.internalBinaryWrite(message.source, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Metadata\n */\nexport const Metadata = new Metadata$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Topic$Type extends MessageType<Topic> {\n    constructor() {\n        super(\"moose.proto.Topic\", [\n            { no: 1, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"retention_period\", kind: \"message\", T: () => Duration },\n            { no: 4, name: \"columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 5, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature },\n            { no: 6, name: \"partition_count\", kind: \"scalar\", opt: true, T: 5 /*ScalarType.INT32*/ },\n            { no: 7, name: \"max_message_bytes\", kind: \"scalar\", opt: true, T: 5 /*ScalarType.INT32*/ },\n            { no: 8, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 9, name: \"life_cycle\", kind: \"enum\", T: () => [\"moose.proto.LifeCycle\", LifeCycle] },\n            { no: 10, name: \"schema_registry\", kind: \"message\", T: () => SchemaRegistry }\n        ]);\n    }\n    create(value?: PartialMessage<Topic>): Topic {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.columns = [];\n        message.lifeCycle = 0;\n        if (value !== undefined)\n            reflectionMergePartial<Topic>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Topic): Topic {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* optional string version */ 1:\n                    message.version = reader.string();\n                    break;\n                case /* string name */ 2:\n                    message.name = reader.string();\n                    break;\n                case /* google.protobuf.Duration retention_period */ 3:\n                    message.retentionPeriod = Duration.internalBinaryRead(reader, reader.uint32(), options, message.retentionPeriod);\n                    break;\n                case /* repeated moose.proto.Column columns */ 4:\n                    message.columns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 5:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                case /* optional int32 partition_count */ 6:\n                    message.partitionCount = reader.int32();\n                    break;\n                case /* optional int32 max_message_bytes */ 7:\n                    message.maxMessageBytes = reader.int32();\n                    break;\n                case /* moose.proto.Metadata metadata */ 8:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* moose.proto.LifeCycle life_cycle */ 9:\n                    message.lifeCycle = reader.int32();\n                    break;\n                case /* optional moose.proto.SchemaRegistry schema_registry */ 10:\n                    message.schemaRegistry = SchemaRegistry.internalBinaryRead(reader, reader.uint32(), options, message.schemaRegistry);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Topic, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* optional string version = 1; */\n        if (message.version !== undefined)\n            writer.tag(1, WireType.LengthDelimited).string(message.version);\n        /* string name = 2; */\n        if (message.name !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.name);\n        /* google.protobuf.Duration retention_period = 3; */\n        if (message.retentionPeriod)\n            Duration.internalBinaryWrite(message.retentionPeriod, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.Column columns = 4; */\n        for (let i = 0; i < message.columns.length; i++)\n            Column.internalBinaryWrite(message.columns[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.PrimitiveSignature source_primitive = 5; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* optional int32 partition_count = 6; */\n        if (message.partitionCount !== undefined)\n            writer.tag(6, WireType.Varint).int32(message.partitionCount);\n        /* optional int32 max_message_bytes = 7; */\n        if (message.maxMessageBytes !== undefined)\n            writer.tag(7, WireType.Varint).int32(message.maxMessageBytes);\n        /* moose.proto.Metadata metadata = 8; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.LifeCycle life_cycle = 9; */\n        if (message.lifeCycle !== 0)\n            writer.tag(9, WireType.Varint).int32(message.lifeCycle);\n        /* optional moose.proto.SchemaRegistry schema_registry = 10; */\n        if (message.schemaRegistry)\n            SchemaRegistry.internalBinaryWrite(message.schemaRegistry, writer.tag(10, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Topic\n */\nexport const Topic = new Topic$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SchemaRegistry$Type extends MessageType<SchemaRegistry> {\n    constructor() {\n        super(\"moose.proto.SchemaRegistry\", [\n            { no: 1, name: \"encoding\", kind: \"enum\", T: () => [\"moose.proto.SchemaRegistry.Encoding\", SchemaRegistry_Encoding] },\n            { no: 2, name: \"schema_id\", kind: \"scalar\", oneof: \"schemaRef\", T: 5 /*ScalarType.INT32*/ },\n            { no: 3, name: \"subject\", kind: \"scalar\", oneof: \"schemaRef\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"subject_version\", kind: \"message\", oneof: \"schemaRef\", T: () => SubjectVersion }\n        ]);\n    }\n    create(value?: PartialMessage<SchemaRegistry>): SchemaRegistry {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.encoding = 0;\n        message.schemaRef = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<SchemaRegistry>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SchemaRegistry): SchemaRegistry {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.SchemaRegistry.Encoding encoding */ 1:\n                    message.encoding = reader.int32();\n                    break;\n                case /* int32 schema_id */ 2:\n                    message.schemaRef = {\n                        oneofKind: \"schemaId\",\n                        schemaId: reader.int32()\n                    };\n                    break;\n                case /* string subject */ 3:\n                    message.schemaRef = {\n                        oneofKind: \"subject\",\n                        subject: reader.string()\n                    };\n                    break;\n                case /* moose.proto.SubjectVersion subject_version */ 4:\n                    message.schemaRef = {\n                        oneofKind: \"subjectVersion\",\n                        subjectVersion: SubjectVersion.internalBinaryRead(reader, reader.uint32(), options, (message.schemaRef as any).subjectVersion)\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SchemaRegistry, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.SchemaRegistry.Encoding encoding = 1; */\n        if (message.encoding !== 0)\n            writer.tag(1, WireType.Varint).int32(message.encoding);\n        /* int32 schema_id = 2; */\n        if (message.schemaRef.oneofKind === \"schemaId\")\n            writer.tag(2, WireType.Varint).int32(message.schemaRef.schemaId);\n        /* string subject = 3; */\n        if (message.schemaRef.oneofKind === \"subject\")\n            writer.tag(3, WireType.LengthDelimited).string(message.schemaRef.subject);\n        /* moose.proto.SubjectVersion subject_version = 4; */\n        if (message.schemaRef.oneofKind === \"subjectVersion\")\n            SubjectVersion.internalBinaryWrite(message.schemaRef.subjectVersion, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SchemaRegistry\n */\nexport const SchemaRegistry = new SchemaRegistry$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SubjectVersion$Type extends MessageType<SubjectVersion> {\n    constructor() {\n        super(\"moose.proto.SubjectVersion\", [\n            { no: 1, name: \"subject\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"version\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ }\n        ]);\n    }\n    create(value?: PartialMessage<SubjectVersion>): SubjectVersion {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.subject = \"\";\n        message.version = 0;\n        if (value !== undefined)\n            reflectionMergePartial<SubjectVersion>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SubjectVersion): SubjectVersion {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string subject */ 1:\n                    message.subject = reader.string();\n                    break;\n                case /* int32 version */ 2:\n                    message.version = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SubjectVersion, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string subject = 1; */\n        if (message.subject !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.subject);\n        /* int32 version = 2; */\n        if (message.version !== 0)\n            writer.tag(2, WireType.Varint).int32(message.version);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SubjectVersion\n */\nexport const SubjectVersion = new SubjectVersion$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ApiEndpoint$Type extends MessageType<ApiEndpoint> {\n    constructor() {\n        super(\"moose.proto.ApiEndpoint\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"ingress\", kind: \"message\", oneof: \"apiType\", T: () => IngressDetails },\n            { no: 3, name: \"egress\", kind: \"message\", oneof: \"apiType\", T: () => EgressDetails },\n            { no: 4, name: \"path\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"method\", kind: \"enum\", T: () => [\"moose.proto.Method\", Method] },\n            { no: 6, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 7, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature },\n            { no: 8, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 9, name: \"pulls_data_from\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature },\n            { no: 10, name: \"pushes_data_to\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature }\n        ]);\n    }\n    create(value?: PartialMessage<ApiEndpoint>): ApiEndpoint {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.apiType = { oneofKind: undefined };\n        message.path = \"\";\n        message.method = 0;\n        message.pullsDataFrom = [];\n        message.pushesDataTo = [];\n        if (value !== undefined)\n            reflectionMergePartial<ApiEndpoint>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ApiEndpoint): ApiEndpoint {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* moose.proto.IngressDetails ingress */ 2:\n                    message.apiType = {\n                        oneofKind: \"ingress\",\n                        ingress: IngressDetails.internalBinaryRead(reader, reader.uint32(), options, (message.apiType as any).ingress)\n                    };\n                    break;\n                case /* moose.proto.EgressDetails egress */ 3:\n                    message.apiType = {\n                        oneofKind: \"egress\",\n                        egress: EgressDetails.internalBinaryRead(reader, reader.uint32(), options, (message.apiType as any).egress)\n                    };\n                    break;\n                case /* string path */ 4:\n                    message.path = reader.string();\n                    break;\n                case /* moose.proto.Method method */ 5:\n                    message.method = reader.int32();\n                    break;\n                case /* optional string version */ 6:\n                    message.version = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 7:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                case /* moose.proto.Metadata metadata */ 8:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pulls_data_from */ 9:\n                    message.pullsDataFrom.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pushes_data_to */ 10:\n                    message.pushesDataTo.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: ApiEndpoint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* moose.proto.IngressDetails ingress = 2; */\n        if (message.apiType.oneofKind === \"ingress\")\n            IngressDetails.internalBinaryWrite(message.apiType.ingress, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.EgressDetails egress = 3; */\n        if (message.apiType.oneofKind === \"egress\")\n            EgressDetails.internalBinaryWrite(message.apiType.egress, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* string path = 4; */\n        if (message.path !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.path);\n        /* moose.proto.Method method = 5; */\n        if (message.method !== 0)\n            writer.tag(5, WireType.Varint).int32(message.method);\n        /* optional string version = 6; */\n        if (message.version !== undefined)\n            writer.tag(6, WireType.LengthDelimited).string(message.version);\n        /* moose.proto.PrimitiveSignature source_primitive = 7; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Metadata metadata = 8; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pulls_data_from = 9; */\n        for (let i = 0; i < message.pullsDataFrom.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pullsDataFrom[i], writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pushes_data_to = 10; */\n        for (let i = 0; i < message.pushesDataTo.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pushesDataTo[i], writer.tag(10, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.ApiEndpoint\n */\nexport const ApiEndpoint = new ApiEndpoint$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass IngressDetails$Type extends MessageType<IngressDetails> {\n    constructor() {\n        super(\"moose.proto.IngressDetails\", [\n            { no: 1, name: \"target_topic\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"format\", kind: \"enum\", opt: true, T: () => [\"moose.proto.EndpointIngestionFormat\", EndpointIngestionFormat] },\n            { no: 3, name: \"dead_letter_queue\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<IngressDetails>): IngressDetails {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.targetTopic = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<IngressDetails>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: IngressDetails): IngressDetails {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string target_topic */ 1:\n                    message.targetTopic = reader.string();\n                    break;\n                case /* optional moose.proto.EndpointIngestionFormat format = 2 [deprecated = true] */ 2:\n                    message.format = reader.int32();\n                    break;\n                case /* optional string dead_letter_queue */ 3:\n                    message.deadLetterQueue = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: IngressDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string target_topic = 1; */\n        if (message.targetTopic !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.targetTopic);\n        /* optional moose.proto.EndpointIngestionFormat format = 2 [deprecated = true]; */\n        if (message.format !== undefined)\n            writer.tag(2, WireType.Varint).int32(message.format);\n        /* optional string dead_letter_queue = 3; */\n        if (message.deadLetterQueue !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.deadLetterQueue);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.IngressDetails\n */\nexport const IngressDetails = new IngressDetails$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass EgressDetails$Type extends MessageType<EgressDetails> {\n    constructor() {\n        super(\"moose.proto.EgressDetails\", [\n            { no: 1, name: \"query_params\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ConsumptionQueryParam },\n            { no: 2, name: \"output_schema\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<EgressDetails>): EgressDetails {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.queryParams = [];\n        message.outputSchema = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<EgressDetails>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EgressDetails): EgressDetails {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* repeated moose.proto.ConsumptionQueryParam query_params */ 1:\n                    message.queryParams.push(ConsumptionQueryParam.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* string output_schema */ 2:\n                    message.outputSchema = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: EgressDetails, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* repeated moose.proto.ConsumptionQueryParam query_params = 1; */\n        for (let i = 0; i < message.queryParams.length; i++)\n            ConsumptionQueryParam.internalBinaryWrite(message.queryParams[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n        /* string output_schema = 2; */\n        if (message.outputSchema !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.outputSchema);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.EgressDetails\n */\nexport const EgressDetails = new EgressDetails$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ConsumptionQueryParam$Type extends MessageType<ConsumptionQueryParam> {\n    constructor() {\n        super(\"moose.proto.ConsumptionQueryParam\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"data_type\", kind: \"message\", T: () => ColumnType },\n            { no: 3, name: \"required\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n        ]);\n    }\n    create(value?: PartialMessage<ConsumptionQueryParam>): ConsumptionQueryParam {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.required = false;\n        if (value !== undefined)\n            reflectionMergePartial<ConsumptionQueryParam>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ConsumptionQueryParam): ConsumptionQueryParam {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* moose.proto.ColumnType data_type */ 2:\n                    message.dataType = ColumnType.internalBinaryRead(reader, reader.uint32(), options, message.dataType);\n                    break;\n                case /* bool required */ 3:\n                    message.required = reader.bool();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: ConsumptionQueryParam, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* moose.proto.ColumnType data_type = 2; */\n        if (message.dataType)\n            ColumnType.internalBinaryWrite(message.dataType, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* bool required = 3; */\n        if (message.required !== false)\n            writer.tag(3, WireType.Varint).bool(message.required);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.ConsumptionQueryParam\n */\nexport const ConsumptionQueryParam = new ConsumptionQueryParam$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Table$Type extends MessageType<Table> {\n    constructor() {\n        super(\"moose.proto.Table\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 3, name: \"order_by\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature },\n            { no: 6, name: \"deduplicate\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n            { no: 7, name: \"engine\", kind: \"message\", T: () => StringValue },\n            { no: 8, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 9, name: \"life_cycle\", kind: \"enum\", T: () => [\"moose.proto.LifeCycle\", LifeCycle] },\n            { no: 10, name: \"engine_params_hash\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 11, name: \"table_settings\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } },\n            { no: 12, name: \"partition_by\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 13, name: \"order_by2\", kind: \"message\", T: () => OrderBy },\n            { no: 14, name: \"indexes\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TableIndex },\n            { no: 15, name: \"sample_by_expression\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 16, name: \"table_ttl_setting\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 17, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 18, name: \"cluster_name\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 19, name: \"primary_key_expression\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 20, name: \"table_settings_hash\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 21, name: \"projections\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TableProjection },\n            { no: 22, name: \"seed_filter\", kind: \"message\", T: () => SeedFilter },\n            { no: 23, name: \"constraints\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TableConstraint }\n        ]);\n    }\n    create(value?: PartialMessage<Table>): Table {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.columns = [];\n        message.orderBy = [];\n        message.deduplicate = false;\n        message.lifeCycle = 0;\n        message.tableSettings = {};\n        message.indexes = [];\n        message.projections = [];\n        message.constraints = [];\n        if (value !== undefined)\n            reflectionMergePartial<Table>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Table): Table {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* repeated moose.proto.Column columns */ 2:\n                    message.columns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated string order_by */ 3:\n                    message.orderBy.push(reader.string());\n                    break;\n                case /* optional string version */ 4:\n                    message.version = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 5:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                case /* bool deduplicate = 6 [deprecated = true] */ 6:\n                    message.deduplicate = reader.bool();\n                    break;\n                case /* google.protobuf.StringValue engine */ 7:\n                    message.engine = StringValue.internalBinaryRead(reader, reader.uint32(), options, message.engine);\n                    break;\n                case /* moose.proto.Metadata metadata */ 8:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* moose.proto.LifeCycle life_cycle */ 9:\n                    message.lifeCycle = reader.int32();\n                    break;\n                case /* optional string engine_params_hash */ 10:\n                    message.engineParamsHash = reader.string();\n                    break;\n                case /* map<string, string> table_settings */ 11:\n                    this.binaryReadMap11(message.tableSettings, reader, options);\n                    break;\n                case /* optional string partition_by */ 12:\n                    message.partitionBy = reader.string();\n                    break;\n                case /* optional moose.proto.OrderBy order_by2 */ 13:\n                    message.orderBy2 = OrderBy.internalBinaryRead(reader, reader.uint32(), options, message.orderBy2);\n                    break;\n                case /* repeated moose.proto.TableIndex indexes */ 14:\n                    message.indexes.push(TableIndex.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* optional string sample_by_expression */ 15:\n                    message.sampleByExpression = reader.string();\n                    break;\n                case /* optional string table_ttl_setting */ 16:\n                    message.tableTtlSetting = reader.string();\n                    break;\n                case /* optional string database */ 17:\n                    message.database = reader.string();\n                    break;\n                case /* optional string cluster_name */ 18:\n                    message.clusterName = reader.string();\n                    break;\n                case /* optional string primary_key_expression */ 19:\n                    message.primaryKeyExpression = reader.string();\n                    break;\n                case /* optional string table_settings_hash */ 20:\n                    message.tableSettingsHash = reader.string();\n                    break;\n                case /* repeated moose.proto.TableProjection projections */ 21:\n                    message.projections.push(TableProjection.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* optional moose.proto.SeedFilter seed_filter */ 22:\n                    message.seedFilter = SeedFilter.internalBinaryRead(reader, reader.uint32(), options, message.seedFilter);\n                    break;\n                case /* repeated moose.proto.TableConstraint constraints */ 23:\n                    message.constraints.push(TableConstraint.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    private binaryReadMap11(map: Table[\"tableSettings\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof Table[\"tableSettings\"] | undefined, val: Table[\"tableSettings\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = reader.string();\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.Table.table_settings\");\n            }\n        }\n        map[key ?? \"\"] = val ?? \"\";\n    }\n    internalBinaryWrite(message: Table, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* repeated moose.proto.Column columns = 2; */\n        for (let i = 0; i < message.columns.length; i++)\n            Column.internalBinaryWrite(message.columns[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* repeated string order_by = 3; */\n        for (let i = 0; i < message.orderBy.length; i++)\n            writer.tag(3, WireType.LengthDelimited).string(message.orderBy[i]);\n        /* optional string version = 4; */\n        if (message.version !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.version);\n        /* moose.proto.PrimitiveSignature source_primitive = 5; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* bool deduplicate = 6 [deprecated = true]; */\n        if (message.deduplicate !== false)\n            writer.tag(6, WireType.Varint).bool(message.deduplicate);\n        /* google.protobuf.StringValue engine = 7; */\n        if (message.engine)\n            StringValue.internalBinaryWrite(message.engine, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Metadata metadata = 8; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.LifeCycle life_cycle = 9; */\n        if (message.lifeCycle !== 0)\n            writer.tag(9, WireType.Varint).int32(message.lifeCycle);\n        /* optional string engine_params_hash = 10; */\n        if (message.engineParamsHash !== undefined)\n            writer.tag(10, WireType.LengthDelimited).string(message.engineParamsHash);\n        /* map<string, string> table_settings = 11; */\n        for (let k of globalThis.Object.keys(message.tableSettings))\n            writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.tableSettings[k]).join();\n        /* optional string partition_by = 12; */\n        if (message.partitionBy !== undefined)\n            writer.tag(12, WireType.LengthDelimited).string(message.partitionBy);\n        /* optional moose.proto.OrderBy order_by2 = 13; */\n        if (message.orderBy2)\n            OrderBy.internalBinaryWrite(message.orderBy2, writer.tag(13, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.TableIndex indexes = 14; */\n        for (let i = 0; i < message.indexes.length; i++)\n            TableIndex.internalBinaryWrite(message.indexes[i], writer.tag(14, WireType.LengthDelimited).fork(), options).join();\n        /* optional string sample_by_expression = 15; */\n        if (message.sampleByExpression !== undefined)\n            writer.tag(15, WireType.LengthDelimited).string(message.sampleByExpression);\n        /* optional string table_ttl_setting = 16; */\n        if (message.tableTtlSetting !== undefined)\n            writer.tag(16, WireType.LengthDelimited).string(message.tableTtlSetting);\n        /* optional string database = 17; */\n        if (message.database !== undefined)\n            writer.tag(17, WireType.LengthDelimited).string(message.database);\n        /* optional string cluster_name = 18; */\n        if (message.clusterName !== undefined)\n            writer.tag(18, WireType.LengthDelimited).string(message.clusterName);\n        /* optional string primary_key_expression = 19; */\n        if (message.primaryKeyExpression !== undefined)\n            writer.tag(19, WireType.LengthDelimited).string(message.primaryKeyExpression);\n        /* optional string table_settings_hash = 20; */\n        if (message.tableSettingsHash !== undefined)\n            writer.tag(20, WireType.LengthDelimited).string(message.tableSettingsHash);\n        /* repeated moose.proto.TableProjection projections = 21; */\n        for (let i = 0; i < message.projections.length; i++)\n            TableProjection.internalBinaryWrite(message.projections[i], writer.tag(21, WireType.LengthDelimited).fork(), options).join();\n        /* optional moose.proto.SeedFilter seed_filter = 22; */\n        if (message.seedFilter)\n            SeedFilter.internalBinaryWrite(message.seedFilter, writer.tag(22, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.TableConstraint constraints = 23; */\n        for (let i = 0; i < message.constraints.length; i++)\n            TableConstraint.internalBinaryWrite(message.constraints[i], writer.tag(23, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Table\n */\nexport const Table = new Table$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TableProjection$Type extends MessageType<TableProjection> {\n    constructor() {\n        super(\"moose.proto.TableProjection\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"body\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<TableProjection>): TableProjection {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.body = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<TableProjection>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableProjection): TableProjection {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string body */ 2:\n                    message.body = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TableProjection, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string body = 2; */\n        if (message.body !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.body);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TableProjection\n */\nexport const TableProjection = new TableProjection$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TableConstraint$Type extends MessageType<TableConstraint> {\n    constructor() {\n        super(\"moose.proto.TableConstraint\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"expression\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"constraint_type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<TableConstraint>): TableConstraint {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.expression = \"\";\n        message.constraintType = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<TableConstraint>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableConstraint): TableConstraint {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string expression */ 2:\n                    message.expression = reader.string();\n                    break;\n                case /* string constraint_type */ 3:\n                    message.constraintType = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TableConstraint, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string expression = 2; */\n        if (message.expression !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.expression);\n        /* string constraint_type = 3; */\n        if (message.constraintType !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.constraintType);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TableConstraint\n */\nexport const TableConstraint = new TableConstraint$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass OrderBy$Type extends MessageType<OrderBy> {\n    constructor() {\n        super(\"moose.proto.OrderBy\", [\n            { no: 1, name: \"fields\", kind: \"message\", oneof: \"t\", T: () => OrderByFields },\n            { no: 2, name: \"expression\", kind: \"scalar\", oneof: \"t\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<OrderBy>): OrderBy {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.t = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<OrderBy>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OrderBy): OrderBy {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.OrderByFields fields */ 1:\n                    message.t = {\n                        oneofKind: \"fields\",\n                        fields: OrderByFields.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).fields)\n                    };\n                    break;\n                case /* string expression */ 2:\n                    message.t = {\n                        oneofKind: \"expression\",\n                        expression: reader.string()\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: OrderBy, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.OrderByFields fields = 1; */\n        if (message.t.oneofKind === \"fields\")\n            OrderByFields.internalBinaryWrite(message.t.fields, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n        /* string expression = 2; */\n        if (message.t.oneofKind === \"expression\")\n            writer.tag(2, WireType.LengthDelimited).string(message.t.expression);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.OrderBy\n */\nexport const OrderBy = new OrderBy$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass OrderByFields$Type extends MessageType<OrderByFields> {\n    constructor() {\n        super(\"moose.proto.OrderByFields\", [\n            { no: 1, name: \"field\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<OrderByFields>): OrderByFields {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.field = [];\n        if (value !== undefined)\n            reflectionMergePartial<OrderByFields>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OrderByFields): OrderByFields {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* repeated string field */ 1:\n                    message.field.push(reader.string());\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: OrderByFields, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* repeated string field = 1; */\n        for (let i = 0; i < message.field.length; i++)\n            writer.tag(1, WireType.LengthDelimited).string(message.field[i]);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.OrderByFields\n */\nexport const OrderByFields = new OrderByFields$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TableIndex$Type extends MessageType<TableIndex> {\n    constructor() {\n        super(\"moose.proto.TableIndex\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"expression\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"arguments\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"granularity\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n        ]);\n    }\n    create(value?: PartialMessage<TableIndex>): TableIndex {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.expression = \"\";\n        message.type = \"\";\n        message.arguments = [];\n        message.granularity = 0n;\n        if (value !== undefined)\n            reflectionMergePartial<TableIndex>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableIndex): TableIndex {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string expression */ 2:\n                    message.expression = reader.string();\n                    break;\n                case /* string type */ 3:\n                    message.type = reader.string();\n                    break;\n                case /* repeated string arguments */ 4:\n                    message.arguments.push(reader.string());\n                    break;\n                case /* uint64 granularity */ 5:\n                    message.granularity = reader.uint64().toBigInt();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TableIndex, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string expression = 2; */\n        if (message.expression !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.expression);\n        /* string type = 3; */\n        if (message.type !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.type);\n        /* repeated string arguments = 4; */\n        for (let i = 0; i < message.arguments.length; i++)\n            writer.tag(4, WireType.LengthDelimited).string(message.arguments[i]);\n        /* uint64 granularity = 5; */\n        if (message.granularity !== 0n)\n            writer.tag(5, WireType.Varint).uint64(message.granularity);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TableIndex\n */\nexport const TableIndex = new TableIndex$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SeedFilter$Type extends MessageType<SeedFilter> {\n    constructor() {\n        super(\"moose.proto.SeedFilter\", [\n            { no: 1, name: \"limit\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 2, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<SeedFilter>): SeedFilter {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        if (value !== undefined)\n            reflectionMergePartial<SeedFilter>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SeedFilter): SeedFilter {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* optional uint64 limit */ 1:\n                    message.limit = reader.uint64().toBigInt();\n                    break;\n                case /* optional string where_clause */ 2:\n                    message.whereClause = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SeedFilter, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* optional uint64 limit = 1; */\n        if (message.limit !== undefined)\n            writer.tag(1, WireType.Varint).uint64(message.limit);\n        /* optional string where_clause = 2; */\n        if (message.whereClause !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.whereClause);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SeedFilter\n */\nexport const SeedFilter = new SeedFilter$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Dmv1View$Type extends MessageType<Dmv1View> {\n    constructor() {\n        super(\"moose.proto.Dmv1View\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"version\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"table_alias\", kind: \"message\", oneof: \"viewType\", T: () => TableAlias }\n        ]);\n    }\n    create(value?: PartialMessage<Dmv1View>): Dmv1View {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.version = \"\";\n        message.viewType = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<Dmv1View>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Dmv1View): Dmv1View {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string version */ 2:\n                    message.version = reader.string();\n                    break;\n                case /* moose.proto.TableAlias table_alias */ 3:\n                    message.viewType = {\n                        oneofKind: \"tableAlias\",\n                        tableAlias: TableAlias.internalBinaryRead(reader, reader.uint32(), options, (message.viewType as any).tableAlias)\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Dmv1View, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string version = 2; */\n        if (message.version !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.version);\n        /* moose.proto.TableAlias table_alias = 3; */\n        if (message.viewType.oneofKind === \"tableAlias\")\n            TableAlias.internalBinaryWrite(message.viewType.tableAlias, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Dmv1View\n */\nexport const Dmv1View = new Dmv1View$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TableAlias$Type extends MessageType<TableAlias> {\n    constructor() {\n        super(\"moose.proto.TableAlias\", [\n            { no: 1, name: \"source_table_name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<TableAlias>): TableAlias {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.sourceTableName = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<TableAlias>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableAlias): TableAlias {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string source_table_name */ 1:\n                    message.sourceTableName = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TableAlias, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string source_table_name = 1; */\n        if (message.sourceTableName !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.sourceTableName);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TableAlias\n */\nexport const TableAlias = new TableAlias$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TableReference$Type extends MessageType<TableReference> {\n    constructor() {\n        super(\"moose.proto.TableReference\", [\n            { no: 1, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"table\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<TableReference>): TableReference {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.table = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<TableReference>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableReference): TableReference {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* optional string database */ 1:\n                    message.database = reader.string();\n                    break;\n                case /* string table */ 2:\n                    message.table = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TableReference, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* optional string database = 1; */\n        if (message.database !== undefined)\n            writer.tag(1, WireType.LengthDelimited).string(message.database);\n        /* string table = 2; */\n        if (message.table !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.table);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TableReference\n */\nexport const TableReference = new TableReference$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SelectQuery$Type extends MessageType<SelectQuery> {\n    constructor() {\n        super(\"moose.proto.SelectQuery\", [\n            { no: 1, name: \"sql\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"source_tables\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TableReference }\n        ]);\n    }\n    create(value?: PartialMessage<SelectQuery>): SelectQuery {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.sql = \"\";\n        message.sourceTables = [];\n        if (value !== undefined)\n            reflectionMergePartial<SelectQuery>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SelectQuery): SelectQuery {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string sql */ 1:\n                    message.sql = reader.string();\n                    break;\n                case /* repeated moose.proto.TableReference source_tables */ 2:\n                    message.sourceTables.push(TableReference.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SelectQuery, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string sql = 1; */\n        if (message.sql !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.sql);\n        /* repeated moose.proto.TableReference source_tables = 2; */\n        for (let i = 0; i < message.sourceTables.length; i++)\n            TableReference.internalBinaryWrite(message.sourceTables[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SelectQuery\n */\nexport const SelectQuery = new SelectQuery$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass View$Type extends MessageType<View> {\n    constructor() {\n        super(\"moose.proto.View\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"select_query\", kind: \"message\", T: () => SelectQuery },\n            { no: 4, name: \"metadata\", kind: \"message\", T: () => Metadata }\n        ]);\n    }\n    create(value?: PartialMessage<View>): View {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<View>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: View): View {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* optional string database */ 2:\n                    message.database = reader.string();\n                    break;\n                case /* moose.proto.SelectQuery select_query */ 3:\n                    message.selectQuery = SelectQuery.internalBinaryRead(reader, reader.uint32(), options, message.selectQuery);\n                    break;\n                case /* optional moose.proto.Metadata metadata */ 4:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: View, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* optional string database = 2; */\n        if (message.database !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.database);\n        /* moose.proto.SelectQuery select_query = 3; */\n        if (message.selectQuery)\n            SelectQuery.internalBinaryWrite(message.selectQuery, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* optional moose.proto.Metadata metadata = 4; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.View\n */\nexport const View = new View$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass MaterializedView$Type extends MessageType<MaterializedView> {\n    constructor() {\n        super(\"moose.proto.MaterializedView\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"select_query\", kind: \"message\", T: () => SelectQuery },\n            { no: 4, name: \"target_table\", kind: \"message\", T: () => TableReference },\n            { no: 5, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 6, name: \"life_cycle\", kind: \"enum\", T: () => [\"moose.proto.LifeCycle\", LifeCycle] }\n        ]);\n    }\n    create(value?: PartialMessage<MaterializedView>): MaterializedView {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.lifeCycle = 0;\n        if (value !== undefined)\n            reflectionMergePartial<MaterializedView>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: MaterializedView): MaterializedView {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* optional string database */ 2:\n                    message.database = reader.string();\n                    break;\n                case /* moose.proto.SelectQuery select_query */ 3:\n                    message.selectQuery = SelectQuery.internalBinaryRead(reader, reader.uint32(), options, message.selectQuery);\n                    break;\n                case /* moose.proto.TableReference target_table */ 4:\n                    message.targetTable = TableReference.internalBinaryRead(reader, reader.uint32(), options, message.targetTable);\n                    break;\n                case /* optional moose.proto.Metadata metadata */ 5:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* moose.proto.LifeCycle life_cycle */ 6:\n                    message.lifeCycle = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: MaterializedView, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* optional string database = 2; */\n        if (message.database !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.database);\n        /* moose.proto.SelectQuery select_query = 3; */\n        if (message.selectQuery)\n            SelectQuery.internalBinaryWrite(message.selectQuery, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.TableReference target_table = 4; */\n        if (message.targetTable)\n            TableReference.internalBinaryWrite(message.targetTable, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* optional moose.proto.Metadata metadata = 5; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.LifeCycle life_cycle = 6; */\n        if (message.lifeCycle !== 0)\n            writer.tag(6, WireType.Varint).int32(message.lifeCycle);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.MaterializedView\n */\nexport const MaterializedView = new MaterializedView$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TopicToTableSyncProcess$Type extends MessageType<TopicToTableSyncProcess> {\n    constructor() {\n        super(\"moose.proto.TopicToTableSyncProcess\", [\n            { no: 1, name: \"source_topic_id\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"target_table_id\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 4, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature }\n        ]);\n    }\n    create(value?: PartialMessage<TopicToTableSyncProcess>): TopicToTableSyncProcess {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.sourceTopicId = \"\";\n        message.targetTableId = \"\";\n        message.columns = [];\n        if (value !== undefined)\n            reflectionMergePartial<TopicToTableSyncProcess>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TopicToTableSyncProcess): TopicToTableSyncProcess {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string source_topic_id */ 1:\n                    message.sourceTopicId = reader.string();\n                    break;\n                case /* string target_table_id */ 2:\n                    message.targetTableId = reader.string();\n                    break;\n                case /* repeated moose.proto.Column columns */ 3:\n                    message.columns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* optional string version */ 4:\n                    message.version = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 5:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TopicToTableSyncProcess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string source_topic_id = 1; */\n        if (message.sourceTopicId !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.sourceTopicId);\n        /* string target_table_id = 2; */\n        if (message.targetTableId !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.targetTableId);\n        /* repeated moose.proto.Column columns = 3; */\n        for (let i = 0; i < message.columns.length; i++)\n            Column.internalBinaryWrite(message.columns[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* optional string version = 4; */\n        if (message.version !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.version);\n        /* moose.proto.PrimitiveSignature source_primitive = 5; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TopicToTableSyncProcess\n */\nexport const TopicToTableSyncProcess = new TopicToTableSyncProcess$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass TopicToTopicSyncProcess$Type extends MessageType<TopicToTopicSyncProcess> {\n    constructor() {\n        super(\"moose.proto.TopicToTopicSyncProcess\", [\n            { no: 1, name: \"source_topic_id\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"target_topic_id\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature }\n        ]);\n    }\n    create(value?: PartialMessage<TopicToTopicSyncProcess>): TopicToTopicSyncProcess {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.sourceTopicId = \"\";\n        message.targetTopicId = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<TopicToTopicSyncProcess>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TopicToTopicSyncProcess): TopicToTopicSyncProcess {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string source_topic_id */ 1:\n                    message.sourceTopicId = reader.string();\n                    break;\n                case /* string target_topic_id */ 2:\n                    message.targetTopicId = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 3:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: TopicToTopicSyncProcess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string source_topic_id = 1; */\n        if (message.sourceTopicId !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.sourceTopicId);\n        /* string target_topic_id = 2; */\n        if (message.targetTopicId !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.targetTopicId);\n        /* moose.proto.PrimitiveSignature source_primitive = 3; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.TopicToTopicSyncProcess\n */\nexport const TopicToTopicSyncProcess = new TopicToTopicSyncProcess$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass FunctionProcess$Type extends MessageType<FunctionProcess> {\n    constructor() {\n        super(\"moose.proto.FunctionProcess\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"source_topic\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"source_columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 4, name: \"target_topic\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"target_topic_config\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } },\n            { no: 6, name: \"target_columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 7, name: \"executable\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 9, name: \"source_primitive\", kind: \"message\", T: () => PrimitiveSignature },\n            { no: 10, name: \"parallel_process_count\", kind: \"scalar\", opt: true, T: 5 /*ScalarType.INT32*/ },\n            { no: 11, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 12, name: \"dead_letter_queue_topic_id\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<FunctionProcess>): FunctionProcess {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.sourceTopic = \"\";\n        message.sourceColumns = [];\n        message.targetTopicConfig = {};\n        message.targetColumns = [];\n        message.executable = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<FunctionProcess>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FunctionProcess): FunctionProcess {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string source_topic */ 2:\n                    message.sourceTopic = reader.string();\n                    break;\n                case /* repeated moose.proto.Column source_columns */ 3:\n                    message.sourceColumns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* optional string target_topic */ 4:\n                    message.targetTopic = reader.string();\n                    break;\n                case /* map<string, string> target_topic_config */ 5:\n                    this.binaryReadMap5(message.targetTopicConfig, reader, options);\n                    break;\n                case /* repeated moose.proto.Column target_columns */ 6:\n                    message.targetColumns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* string executable */ 7:\n                    message.executable = reader.string();\n                    break;\n                case /* optional string version */ 8:\n                    message.version = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveSignature source_primitive */ 9:\n                    message.sourcePrimitive = PrimitiveSignature.internalBinaryRead(reader, reader.uint32(), options, message.sourcePrimitive);\n                    break;\n                case /* optional int32 parallel_process_count */ 10:\n                    message.parallelProcessCount = reader.int32();\n                    break;\n                case /* optional moose.proto.Metadata metadata */ 11:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* optional string dead_letter_queue_topic_id */ 12:\n                    message.deadLetterQueueTopicId = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    private binaryReadMap5(map: FunctionProcess[\"targetTopicConfig\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof FunctionProcess[\"targetTopicConfig\"] | undefined, val: FunctionProcess[\"targetTopicConfig\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = reader.string();\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.FunctionProcess.target_topic_config\");\n            }\n        }\n        map[key ?? \"\"] = val ?? \"\";\n    }\n    internalBinaryWrite(message: FunctionProcess, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string source_topic = 2; */\n        if (message.sourceTopic !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.sourceTopic);\n        /* repeated moose.proto.Column source_columns = 3; */\n        for (let i = 0; i < message.sourceColumns.length; i++)\n            Column.internalBinaryWrite(message.sourceColumns[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* optional string target_topic = 4; */\n        if (message.targetTopic !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.targetTopic);\n        /* map<string, string> target_topic_config = 5; */\n        for (let k of globalThis.Object.keys(message.targetTopicConfig))\n            writer.tag(5, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.targetTopicConfig[k]).join();\n        /* repeated moose.proto.Column target_columns = 6; */\n        for (let i = 0; i < message.targetColumns.length; i++)\n            Column.internalBinaryWrite(message.targetColumns[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* string executable = 7; */\n        if (message.executable !== \"\")\n            writer.tag(7, WireType.LengthDelimited).string(message.executable);\n        /* optional string version = 8; */\n        if (message.version !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.version);\n        /* moose.proto.PrimitiveSignature source_primitive = 9; */\n        if (message.sourcePrimitive)\n            PrimitiveSignature.internalBinaryWrite(message.sourcePrimitive, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n        /* optional int32 parallel_process_count = 10; */\n        if (message.parallelProcessCount !== undefined)\n            writer.tag(10, WireType.Varint).int32(message.parallelProcessCount);\n        /* optional moose.proto.Metadata metadata = 11; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(11, WireType.LengthDelimited).fork(), options).join();\n        /* optional string dead_letter_queue_topic_id = 12; */\n        if (message.deadLetterQueueTopicId !== undefined)\n            writer.tag(12, WireType.LengthDelimited).string(message.deadLetterQueueTopicId);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.FunctionProcess\n */\nexport const FunctionProcess = new FunctionProcess$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass InitialDataLoad$Type extends MessageType<InitialDataLoad> {\n    constructor() {\n        super(\"moose.proto.InitialDataLoad\", [\n            { no: 1, name: \"table\", kind: \"message\", T: () => Table },\n            { no: 2, name: \"topic\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"progress\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n        ]);\n    }\n    create(value?: PartialMessage<InitialDataLoad>): InitialDataLoad {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.topic = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<InitialDataLoad>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InitialDataLoad): InitialDataLoad {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.Table table */ 1:\n                    message.table = Table.internalBinaryRead(reader, reader.uint32(), options, message.table);\n                    break;\n                case /* string topic */ 2:\n                    message.topic = reader.string();\n                    break;\n                case /* optional uint64 progress */ 3:\n                    message.progress = reader.uint64().toBigInt();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: InitialDataLoad, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.Table table = 1; */\n        if (message.table)\n            Table.internalBinaryWrite(message.table, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n        /* string topic = 2; */\n        if (message.topic !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.topic);\n        /* optional uint64 progress = 3; */\n        if (message.progress !== undefined)\n            writer.tag(3, WireType.Varint).uint64(message.progress);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.InitialDataLoad\n */\nexport const InitialDataLoad = new InitialDataLoad$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Column$Type extends MessageType<Column> {\n    constructor() {\n        super(\"moose.proto.Column\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"data_type\", kind: \"message\", T: () => ColumnType },\n            { no: 3, name: \"required\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n            { no: 4, name: \"unique\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n            { no: 5, name: \"primary_key\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ },\n            { no: 6, name: \"default\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ },\n            { no: 9, name: \"default_expr\", kind: \"message\", T: () => StringValue },\n            { no: 7, name: \"annotations\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } },\n            { no: 8, name: \"comment\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 10, name: \"ttl\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 11, name: \"codec\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 12, name: \"materialized\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 13, name: \"alias\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<Column>): Column {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.required = false;\n        message.unique = false;\n        message.primaryKey = false;\n        message.default = 0;\n        message.annotations = {};\n        if (value !== undefined)\n            reflectionMergePartial<Column>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Column): Column {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* moose.proto.ColumnType data_type */ 2:\n                    message.dataType = ColumnType.internalBinaryRead(reader, reader.uint32(), options, message.dataType);\n                    break;\n                case /* bool required */ 3:\n                    message.required = reader.bool();\n                    break;\n                case /* bool unique */ 4:\n                    message.unique = reader.bool();\n                    break;\n                case /* bool primary_key */ 5:\n                    message.primaryKey = reader.bool();\n                    break;\n                case /* int32 default = 6 [deprecated = true] */ 6:\n                    message.default = reader.int32();\n                    break;\n                case /* google.protobuf.StringValue default_expr */ 9:\n                    message.defaultExpr = StringValue.internalBinaryRead(reader, reader.uint32(), options, message.defaultExpr);\n                    break;\n                case /* map<string, string> annotations */ 7:\n                    this.binaryReadMap7(message.annotations, reader, options);\n                    break;\n                case /* optional string comment */ 8:\n                    message.comment = reader.string();\n                    break;\n                case /* optional string ttl */ 10:\n                    message.ttl = reader.string();\n                    break;\n                case /* optional string codec */ 11:\n                    message.codec = reader.string();\n                    break;\n                case /* optional string materialized */ 12:\n                    message.materialized = reader.string();\n                    break;\n                case /* optional string alias */ 13:\n                    message.alias = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    private binaryReadMap7(map: Column[\"annotations\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof Column[\"annotations\"] | undefined, val: Column[\"annotations\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = reader.string();\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.Column.annotations\");\n            }\n        }\n        map[key ?? \"\"] = val ?? \"\";\n    }\n    internalBinaryWrite(message: Column, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* moose.proto.ColumnType data_type = 2; */\n        if (message.dataType)\n            ColumnType.internalBinaryWrite(message.dataType, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* bool required = 3; */\n        if (message.required !== false)\n            writer.tag(3, WireType.Varint).bool(message.required);\n        /* bool unique = 4; */\n        if (message.unique !== false)\n            writer.tag(4, WireType.Varint).bool(message.unique);\n        /* bool primary_key = 5; */\n        if (message.primaryKey !== false)\n            writer.tag(5, WireType.Varint).bool(message.primaryKey);\n        /* int32 default = 6 [deprecated = true]; */\n        if (message.default !== 0)\n            writer.tag(6, WireType.Varint).int32(message.default);\n        /* map<string, string> annotations = 7; */\n        for (let k of globalThis.Object.keys(message.annotations))\n            writer.tag(7, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.annotations[k]).join();\n        /* optional string comment = 8; */\n        if (message.comment !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.comment);\n        /* google.protobuf.StringValue default_expr = 9; */\n        if (message.defaultExpr)\n            StringValue.internalBinaryWrite(message.defaultExpr, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n        /* optional string ttl = 10; */\n        if (message.ttl !== undefined)\n            writer.tag(10, WireType.LengthDelimited).string(message.ttl);\n        /* optional string codec = 11; */\n        if (message.codec !== undefined)\n            writer.tag(11, WireType.LengthDelimited).string(message.codec);\n        /* optional string materialized = 12; */\n        if (message.materialized !== undefined)\n            writer.tag(12, WireType.LengthDelimited).string(message.materialized);\n        /* optional string alias = 13; */\n        if (message.alias !== undefined)\n            writer.tag(13, WireType.LengthDelimited).string(message.alias);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Column\n */\nexport const Column = new Column$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Decimal$Type extends MessageType<Decimal> {\n    constructor() {\n        super(\"moose.proto.Decimal\", [\n            { no: 1, name: \"precision\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ },\n            { no: 2, name: \"scale\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ }\n        ]);\n    }\n    create(value?: PartialMessage<Decimal>): Decimal {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.precision = 0;\n        message.scale = 0;\n        if (value !== undefined)\n            reflectionMergePartial<Decimal>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Decimal): Decimal {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int32 precision */ 1:\n                    message.precision = reader.int32();\n                    break;\n                case /* int32 scale */ 2:\n                    message.scale = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Decimal, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int32 precision = 1; */\n        if (message.precision !== 0)\n            writer.tag(1, WireType.Varint).int32(message.precision);\n        /* int32 scale = 2; */\n        if (message.scale !== 0)\n            writer.tag(2, WireType.Varint).int32(message.scale);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Decimal\n */\nexport const Decimal = new Decimal$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Tuple$Type extends MessageType<Tuple> {\n    constructor() {\n        super(\"moose.proto.Tuple\", [\n            { no: 1, name: \"names\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"types\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => ColumnType }\n        ]);\n    }\n    create(value?: PartialMessage<Tuple>): Tuple {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.names = [];\n        message.types = [];\n        if (value !== undefined)\n            reflectionMergePartial<Tuple>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Tuple): Tuple {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* repeated string names */ 1:\n                    message.names.push(reader.string());\n                    break;\n                case /* repeated moose.proto.ColumnType types */ 2:\n                    message.types.push(ColumnType.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Tuple, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* repeated string names = 1; */\n        for (let i = 0; i < message.names.length; i++)\n            writer.tag(1, WireType.LengthDelimited).string(message.names[i]);\n        /* repeated moose.proto.ColumnType types = 2; */\n        for (let i = 0; i < message.types.length; i++)\n            ColumnType.internalBinaryWrite(message.types[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Tuple\n */\nexport const Tuple = new Tuple$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Map$Type extends MessageType<Map> {\n    constructor() {\n        super(\"moose.proto.Map\", [\n            { no: 1, name: \"key_type\", kind: \"message\", T: () => ColumnType },\n            { no: 2, name: \"value_type\", kind: \"message\", T: () => ColumnType }\n        ]);\n    }\n    create(value?: PartialMessage<Map>): Map {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        if (value !== undefined)\n            reflectionMergePartial<Map>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Map): Map {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.ColumnType key_type */ 1:\n                    message.keyType = ColumnType.internalBinaryRead(reader, reader.uint32(), options, message.keyType);\n                    break;\n                case /* moose.proto.ColumnType value_type */ 2:\n                    message.valueType = ColumnType.internalBinaryRead(reader, reader.uint32(), options, message.valueType);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Map, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.ColumnType key_type = 1; */\n        if (message.keyType)\n            ColumnType.internalBinaryWrite(message.keyType, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.ColumnType value_type = 2; */\n        if (message.valueType)\n            ColumnType.internalBinaryWrite(message.valueType, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Map\n */\nexport const Map = new Map$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass JsonTypedPath$Type extends MessageType<JsonTypedPath> {\n    constructor() {\n        super(\"moose.proto.JsonTypedPath\", [\n            { no: 1, name: \"path\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"type\", kind: \"message\", T: () => ColumnType }\n        ]);\n    }\n    create(value?: PartialMessage<JsonTypedPath>): JsonTypedPath {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.path = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<JsonTypedPath>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: JsonTypedPath): JsonTypedPath {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string path */ 1:\n                    message.path = reader.string();\n                    break;\n                case /* moose.proto.ColumnType type */ 2:\n                    message.type = ColumnType.internalBinaryRead(reader, reader.uint32(), options, message.type);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: JsonTypedPath, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string path = 1; */\n        if (message.path !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.path);\n        /* moose.proto.ColumnType type = 2; */\n        if (message.type)\n            ColumnType.internalBinaryWrite(message.type, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.JsonTypedPath\n */\nexport const JsonTypedPath = new JsonTypedPath$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Json$Type extends MessageType<Json> {\n    constructor() {\n        super(\"moose.proto.Json\", [\n            { no: 1, name: \"max_dynamic_paths\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 2, name: \"max_dynamic_types\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 3, name: \"typed_paths\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => JsonTypedPath },\n            { no: 4, name: \"skip_paths\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"skip_regexps\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<Json>): Json {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.typedPaths = [];\n        message.skipPaths = [];\n        message.skipRegexps = [];\n        if (value !== undefined)\n            reflectionMergePartial<Json>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Json): Json {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* optional uint64 max_dynamic_paths */ 1:\n                    message.maxDynamicPaths = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint64 max_dynamic_types */ 2:\n                    message.maxDynamicTypes = reader.uint64().toBigInt();\n                    break;\n                case /* repeated moose.proto.JsonTypedPath typed_paths */ 3:\n                    message.typedPaths.push(JsonTypedPath.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated string skip_paths */ 4:\n                    message.skipPaths.push(reader.string());\n                    break;\n                case /* repeated string skip_regexps */ 5:\n                    message.skipRegexps.push(reader.string());\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Json, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* optional uint64 max_dynamic_paths = 1; */\n        if (message.maxDynamicPaths !== undefined)\n            writer.tag(1, WireType.Varint).uint64(message.maxDynamicPaths);\n        /* optional uint64 max_dynamic_types = 2; */\n        if (message.maxDynamicTypes !== undefined)\n            writer.tag(2, WireType.Varint).uint64(message.maxDynamicTypes);\n        /* repeated moose.proto.JsonTypedPath typed_paths = 3; */\n        for (let i = 0; i < message.typedPaths.length; i++)\n            JsonTypedPath.internalBinaryWrite(message.typedPaths[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* repeated string skip_paths = 4; */\n        for (let i = 0; i < message.skipPaths.length; i++)\n            writer.tag(4, WireType.LengthDelimited).string(message.skipPaths[i]);\n        /* repeated string skip_regexps = 5; */\n        for (let i = 0; i < message.skipRegexps.length; i++)\n            writer.tag(5, WireType.LengthDelimited).string(message.skipRegexps[i]);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Json\n */\nexport const Json = new Json$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass ColumnType$Type extends MessageType<ColumnType> {\n    constructor() {\n        super(\"moose.proto.ColumnType\", [\n            { no: 1, name: \"simple\", kind: \"enum\", oneof: \"t\", T: () => [\"moose.proto.SimpleColumnType\", SimpleColumnType] },\n            { no: 2, name: \"enum\", kind: \"message\", oneof: \"t\", T: () => DataEnum },\n            { no: 3, name: \"array\", kind: \"message\", oneof: \"t\", T: () => ColumnType },\n            { no: 4, name: \"nested\", kind: \"message\", oneof: \"t\", T: () => Nested },\n            { no: 5, name: \"array_of_nullable\", kind: \"message\", oneof: \"t\", T: () => ColumnType },\n            { no: 6, name: \"tuple\", kind: \"message\", oneof: \"t\", T: () => Tuple },\n            { no: 7, name: \"nullable\", kind: \"message\", oneof: \"t\", T: () => ColumnType },\n            { no: 8, name: \"map\", kind: \"message\", oneof: \"t\", T: () => Map },\n            { no: 9, name: \"json\", kind: \"message\", oneof: \"t\", T: () => Json },\n            { no: 11, name: \"fixed_string\", kind: \"scalar\", oneof: \"t\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 12, name: \"date_time\", kind: \"message\", oneof: \"t\", T: () => DateType },\n            { no: 13, name: \"decimal\", kind: \"message\", oneof: \"t\", T: () => Decimal },\n            { no: 14, name: \"float\", kind: \"enum\", oneof: \"t\", T: () => [\"moose.proto.FloatType\", FloatType] },\n            { no: 15, name: \"int\", kind: \"enum\", oneof: \"t\", T: () => [\"moose.proto.IntType\", IntType] }\n        ]);\n    }\n    create(value?: PartialMessage<ColumnType>): ColumnType {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.t = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<ColumnType>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ColumnType): ColumnType {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.SimpleColumnType simple */ 1:\n                    message.t = {\n                        oneofKind: \"simple\",\n                        simple: reader.int32()\n                    };\n                    break;\n                case /* moose.proto.DataEnum enum */ 2:\n                    message.t = {\n                        oneofKind: \"enum\",\n                        enum: DataEnum.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).enum)\n                    };\n                    break;\n                case /* moose.proto.ColumnType array */ 3:\n                    message.t = {\n                        oneofKind: \"array\",\n                        array: ColumnType.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).array)\n                    };\n                    break;\n                case /* moose.proto.Nested nested */ 4:\n                    message.t = {\n                        oneofKind: \"nested\",\n                        nested: Nested.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).nested)\n                    };\n                    break;\n                case /* moose.proto.ColumnType array_of_nullable */ 5:\n                    message.t = {\n                        oneofKind: \"arrayOfNullable\",\n                        arrayOfNullable: ColumnType.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).arrayOfNullable)\n                    };\n                    break;\n                case /* moose.proto.Tuple tuple */ 6:\n                    message.t = {\n                        oneofKind: \"tuple\",\n                        tuple: Tuple.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).tuple)\n                    };\n                    break;\n                case /* moose.proto.ColumnType nullable */ 7:\n                    message.t = {\n                        oneofKind: \"nullable\",\n                        nullable: ColumnType.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).nullable)\n                    };\n                    break;\n                case /* moose.proto.Map map */ 8:\n                    message.t = {\n                        oneofKind: \"map\",\n                        map: Map.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).map)\n                    };\n                    break;\n                case /* moose.proto.Json json */ 9:\n                    message.t = {\n                        oneofKind: \"json\",\n                        json: Json.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).json)\n                    };\n                    break;\n                case /* uint64 fixed_string */ 11:\n                    message.t = {\n                        oneofKind: \"fixedString\",\n                        fixedString: reader.uint64().toBigInt()\n                    };\n                    break;\n                case /* moose.proto.DateType date_time */ 12:\n                    message.t = {\n                        oneofKind: \"dateTime\",\n                        dateTime: DateType.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).dateTime)\n                    };\n                    break;\n                case /* moose.proto.Decimal decimal */ 13:\n                    message.t = {\n                        oneofKind: \"decimal\",\n                        decimal: Decimal.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).decimal)\n                    };\n                    break;\n                case /* moose.proto.FloatType float */ 14:\n                    message.t = {\n                        oneofKind: \"float\",\n                        float: reader.int32()\n                    };\n                    break;\n                case /* moose.proto.IntType int */ 15:\n                    message.t = {\n                        oneofKind: \"int\",\n                        int: reader.int32()\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: ColumnType, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.SimpleColumnType simple = 1; */\n        if (message.t.oneofKind === \"simple\")\n            writer.tag(1, WireType.Varint).int32(message.t.simple);\n        /* moose.proto.DataEnum enum = 2; */\n        if (message.t.oneofKind === \"enum\")\n            DataEnum.internalBinaryWrite(message.t.enum, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.ColumnType array = 3; */\n        if (message.t.oneofKind === \"array\")\n            ColumnType.internalBinaryWrite(message.t.array, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Nested nested = 4; */\n        if (message.t.oneofKind === \"nested\")\n            Nested.internalBinaryWrite(message.t.nested, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.ColumnType array_of_nullable = 5; */\n        if (message.t.oneofKind === \"arrayOfNullable\")\n            ColumnType.internalBinaryWrite(message.t.arrayOfNullable, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Tuple tuple = 6; */\n        if (message.t.oneofKind === \"tuple\")\n            Tuple.internalBinaryWrite(message.t.tuple, writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.ColumnType nullable = 7; */\n        if (message.t.oneofKind === \"nullable\")\n            ColumnType.internalBinaryWrite(message.t.nullable, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Map map = 8; */\n        if (message.t.oneofKind === \"map\")\n            Map.internalBinaryWrite(message.t.map, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Json json = 9; */\n        if (message.t.oneofKind === \"json\")\n            Json.internalBinaryWrite(message.t.json, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n        /* uint64 fixed_string = 11; */\n        if (message.t.oneofKind === \"fixedString\")\n            writer.tag(11, WireType.Varint).uint64(message.t.fixedString);\n        /* moose.proto.DateType date_time = 12; */\n        if (message.t.oneofKind === \"dateTime\")\n            DateType.internalBinaryWrite(message.t.dateTime, writer.tag(12, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.Decimal decimal = 13; */\n        if (message.t.oneofKind === \"decimal\")\n            Decimal.internalBinaryWrite(message.t.decimal, writer.tag(13, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.FloatType float = 14; */\n        if (message.t.oneofKind === \"float\")\n            writer.tag(14, WireType.Varint).int32(message.t.float);\n        /* moose.proto.IntType int = 15; */\n        if (message.t.oneofKind === \"int\")\n            writer.tag(15, WireType.Varint).int32(message.t.int);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.ColumnType\n */\nexport const ColumnType = new ColumnType$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DateType$Type extends MessageType<DateType> {\n    constructor() {\n        super(\"moose.proto.DateType\", [\n            { no: 1, name: \"precision\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DateType>): DateType {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.precision = 0;\n        if (value !== undefined)\n            reflectionMergePartial<DateType>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DateType): DateType {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int32 precision */ 1:\n                    message.precision = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DateType, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int32 precision = 1; */\n        if (message.precision !== 0)\n            writer.tag(1, WireType.Varint).int32(message.precision);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DateType\n */\nexport const DateType = new DateType$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DataEnum$Type extends MessageType<DataEnum> {\n    constructor() {\n        super(\"moose.proto.DataEnum\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"values\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => EnumMember }\n        ]);\n    }\n    create(value?: PartialMessage<DataEnum>): DataEnum {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.values = [];\n        if (value !== undefined)\n            reflectionMergePartial<DataEnum>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DataEnum): DataEnum {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* repeated moose.proto.EnumMember values */ 2:\n                    message.values.push(EnumMember.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DataEnum, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* repeated moose.proto.EnumMember values = 2; */\n        for (let i = 0; i < message.values.length; i++)\n            EnumMember.internalBinaryWrite(message.values[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DataEnum\n */\nexport const DataEnum = new DataEnum$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Nested$Type extends MessageType<Nested> {\n    constructor() {\n        super(\"moose.proto.Nested\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => Column },\n            { no: 3, name: \"jwt\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n        ]);\n    }\n    create(value?: PartialMessage<Nested>): Nested {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.columns = [];\n        message.jwt = false;\n        if (value !== undefined)\n            reflectionMergePartial<Nested>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Nested): Nested {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* repeated moose.proto.Column columns */ 2:\n                    message.columns.push(Column.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* bool jwt */ 3:\n                    message.jwt = reader.bool();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Nested, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* repeated moose.proto.Column columns = 2; */\n        for (let i = 0; i < message.columns.length; i++)\n            Column.internalBinaryWrite(message.columns[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* bool jwt = 3; */\n        if (message.jwt !== false)\n            writer.tag(3, WireType.Varint).bool(message.jwt);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Nested\n */\nexport const Nested = new Nested$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass EnumMember$Type extends MessageType<EnumMember> {\n    constructor() {\n        super(\"moose.proto.EnumMember\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"value\", kind: \"message\", T: () => EnumValue }\n        ]);\n    }\n    create(value?: PartialMessage<EnumMember>): EnumMember {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<EnumMember>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EnumMember): EnumMember {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* moose.proto.EnumValue value */ 2:\n                    message.value = EnumValue.internalBinaryRead(reader, reader.uint32(), options, message.value);\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: EnumMember, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* moose.proto.EnumValue value = 2; */\n        if (message.value)\n            EnumValue.internalBinaryWrite(message.value, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.EnumMember\n */\nexport const EnumMember = new EnumMember$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass EnumValue$Type extends MessageType<EnumValue> {\n    constructor() {\n        super(\"moose.proto.EnumValue\", [\n            { no: 1, name: \"int_value\", kind: \"scalar\", oneof: \"value\", T: 5 /*ScalarType.INT32*/ },\n            { no: 2, name: \"string_value\", kind: \"scalar\", oneof: \"value\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<EnumValue>): EnumValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<EnumValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EnumValue): EnumValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int32 int_value */ 1:\n                    message.value = {\n                        oneofKind: \"intValue\",\n                        intValue: reader.int32()\n                    };\n                    break;\n                case /* string string_value */ 2:\n                    message.value = {\n                        oneofKind: \"stringValue\",\n                        stringValue: reader.string()\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: EnumValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int32 int_value = 1; */\n        if (message.value.oneofKind === \"intValue\")\n            writer.tag(1, WireType.Varint).int32(message.value.intValue);\n        /* string string_value = 2; */\n        if (message.value.oneofKind === \"stringValue\")\n            writer.tag(2, WireType.LengthDelimited).string(message.value.stringValue);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.EnumValue\n */\nexport const EnumValue = new EnumValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass PrimitiveSignature$Type extends MessageType<PrimitiveSignature> {\n    constructor() {\n        super(\"moose.proto.PrimitiveSignature\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"primitive_type\", kind: \"enum\", T: () => [\"moose.proto.PrimitiveTypes\", PrimitiveTypes] }\n        ]);\n    }\n    create(value?: PartialMessage<PrimitiveSignature>): PrimitiveSignature {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.primitiveType = 0;\n        if (value !== undefined)\n            reflectionMergePartial<PrimitiveSignature>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PrimitiveSignature): PrimitiveSignature {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* moose.proto.PrimitiveTypes primitive_type */ 2:\n                    message.primitiveType = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: PrimitiveSignature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* moose.proto.PrimitiveTypes primitive_type = 2; */\n        if (message.primitiveType !== 0)\n            writer.tag(2, WireType.Varint).int32(message.primitiveType);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.PrimitiveSignature\n */\nexport const PrimitiveSignature = new PrimitiveSignature$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass OrchestrationWorker$Type extends MessageType<OrchestrationWorker> {\n    constructor() {\n        super(\"moose.proto.OrchestrationWorker\", [\n            { no: 1, name: \"supported_language\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<OrchestrationWorker>): OrchestrationWorker {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.supportedLanguage = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<OrchestrationWorker>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OrchestrationWorker): OrchestrationWorker {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string supported_language */ 1:\n                    message.supportedLanguage = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: OrchestrationWorker, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string supported_language = 1; */\n        if (message.supportedLanguage !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.supportedLanguage);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.OrchestrationWorker\n */\nexport const OrchestrationWorker = new OrchestrationWorker$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SqlResource$Type extends MessageType<SqlResource> {\n    constructor() {\n        super(\"moose.proto.SqlResource\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"setup\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"teardown\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"pulls_data_from\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature },\n            { no: 6, name: \"pushes_data_to\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature },\n            { no: 7, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"source_file\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<SqlResource>): SqlResource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.setup = [];\n        message.teardown = [];\n        message.pullsDataFrom = [];\n        message.pushesDataTo = [];\n        message.sourceFile = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<SqlResource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SqlResource): SqlResource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* repeated string setup */ 2:\n                    message.setup.push(reader.string());\n                    break;\n                case /* repeated string teardown */ 3:\n                    message.teardown.push(reader.string());\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pulls_data_from */ 5:\n                    message.pullsDataFrom.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pushes_data_to */ 6:\n                    message.pushesDataTo.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* optional string database */ 7:\n                    message.database = reader.string();\n                    break;\n                case /* string source_file */ 8:\n                    message.sourceFile = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SqlResource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* repeated string setup = 2; */\n        for (let i = 0; i < message.setup.length; i++)\n            writer.tag(2, WireType.LengthDelimited).string(message.setup[i]);\n        /* repeated string teardown = 3; */\n        for (let i = 0; i < message.teardown.length; i++)\n            writer.tag(3, WireType.LengthDelimited).string(message.teardown[i]);\n        /* repeated moose.proto.InfrastructureSignature pulls_data_from = 5; */\n        for (let i = 0; i < message.pullsDataFrom.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pullsDataFrom[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pushes_data_to = 6; */\n        for (let i = 0; i < message.pushesDataTo.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pushesDataTo[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* optional string database = 7; */\n        if (message.database !== undefined)\n            writer.tag(7, WireType.LengthDelimited).string(message.database);\n        /* string source_file = 8; */\n        if (message.sourceFile !== \"\")\n            writer.tag(8, WireType.LengthDelimited).string(message.sourceFile);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SqlResource\n */\nexport const SqlResource = new SqlResource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass InfrastructureSignature$Type extends MessageType<InfrastructureSignature> {\n    constructor() {\n        super(\"moose.proto.InfrastructureSignature\", [\n            { no: 1, name: \"topic_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"table_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"dmv1_view_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"sql_resource_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"api_endpoint_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"topic_to_table_sync_process_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 7, name: \"materialized_view_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"view_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 9, name: \"select_row_policy_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ },\n            { no: 10, name: \"olap_dictionary_id\", kind: \"scalar\", oneof: \"signature\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<InfrastructureSignature>): InfrastructureSignature {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.signature = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<InfrastructureSignature>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: InfrastructureSignature): InfrastructureSignature {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string topic_id */ 1:\n                    message.signature = {\n                        oneofKind: \"topicId\",\n                        topicId: reader.string()\n                    };\n                    break;\n                case /* string table_id */ 2:\n                    message.signature = {\n                        oneofKind: \"tableId\",\n                        tableId: reader.string()\n                    };\n                    break;\n                case /* string dmv1_view_id */ 3:\n                    message.signature = {\n                        oneofKind: \"dmv1ViewId\",\n                        dmv1ViewId: reader.string()\n                    };\n                    break;\n                case /* string sql_resource_id */ 4:\n                    message.signature = {\n                        oneofKind: \"sqlResourceId\",\n                        sqlResourceId: reader.string()\n                    };\n                    break;\n                case /* string api_endpoint_id */ 5:\n                    message.signature = {\n                        oneofKind: \"apiEndpointId\",\n                        apiEndpointId: reader.string()\n                    };\n                    break;\n                case /* string topic_to_table_sync_process_id */ 6:\n                    message.signature = {\n                        oneofKind: \"topicToTableSyncProcessId\",\n                        topicToTableSyncProcessId: reader.string()\n                    };\n                    break;\n                case /* string materialized_view_id */ 7:\n                    message.signature = {\n                        oneofKind: \"materializedViewId\",\n                        materializedViewId: reader.string()\n                    };\n                    break;\n                case /* string view_id */ 8:\n                    message.signature = {\n                        oneofKind: \"viewId\",\n                        viewId: reader.string()\n                    };\n                    break;\n                case /* string select_row_policy_id */ 9:\n                    message.signature = {\n                        oneofKind: \"selectRowPolicyId\",\n                        selectRowPolicyId: reader.string()\n                    };\n                    break;\n                case /* string olap_dictionary_id */ 10:\n                    message.signature = {\n                        oneofKind: \"olapDictionaryId\",\n                        olapDictionaryId: reader.string()\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: InfrastructureSignature, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string topic_id = 1; */\n        if (message.signature.oneofKind === \"topicId\")\n            writer.tag(1, WireType.LengthDelimited).string(message.signature.topicId);\n        /* string table_id = 2; */\n        if (message.signature.oneofKind === \"tableId\")\n            writer.tag(2, WireType.LengthDelimited).string(message.signature.tableId);\n        /* string dmv1_view_id = 3; */\n        if (message.signature.oneofKind === \"dmv1ViewId\")\n            writer.tag(3, WireType.LengthDelimited).string(message.signature.dmv1ViewId);\n        /* string sql_resource_id = 4; */\n        if (message.signature.oneofKind === \"sqlResourceId\")\n            writer.tag(4, WireType.LengthDelimited).string(message.signature.sqlResourceId);\n        /* string api_endpoint_id = 5; */\n        if (message.signature.oneofKind === \"apiEndpointId\")\n            writer.tag(5, WireType.LengthDelimited).string(message.signature.apiEndpointId);\n        /* string topic_to_table_sync_process_id = 6; */\n        if (message.signature.oneofKind === \"topicToTableSyncProcessId\")\n            writer.tag(6, WireType.LengthDelimited).string(message.signature.topicToTableSyncProcessId);\n        /* string materialized_view_id = 7; */\n        if (message.signature.oneofKind === \"materializedViewId\")\n            writer.tag(7, WireType.LengthDelimited).string(message.signature.materializedViewId);\n        /* string view_id = 8; */\n        if (message.signature.oneofKind === \"viewId\")\n            writer.tag(8, WireType.LengthDelimited).string(message.signature.viewId);\n        /* string select_row_policy_id = 9; */\n        if (message.signature.oneofKind === \"selectRowPolicyId\")\n            writer.tag(9, WireType.LengthDelimited).string(message.signature.selectRowPolicyId);\n        /* string olap_dictionary_id = 10; */\n        if (message.signature.oneofKind === \"olapDictionaryId\")\n            writer.tag(10, WireType.LengthDelimited).string(message.signature.olapDictionaryId);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.InfrastructureSignature\n */\nexport const InfrastructureSignature = new InfrastructureSignature$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass WebApp$Type extends MessageType<WebApp> {\n    constructor() {\n        super(\"moose.proto.WebApp\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"mount_path\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"metadata\", kind: \"message\", T: () => WebAppMetadata },\n            { no: 4, name: \"pulls_data_from\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature },\n            { no: 5, name: \"pushes_data_to\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature }\n        ]);\n    }\n    create(value?: PartialMessage<WebApp>): WebApp {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.mountPath = \"\";\n        message.pullsDataFrom = [];\n        message.pushesDataTo = [];\n        if (value !== undefined)\n            reflectionMergePartial<WebApp>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WebApp): WebApp {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string mount_path */ 2:\n                    message.mountPath = reader.string();\n                    break;\n                case /* optional moose.proto.WebAppMetadata metadata */ 3:\n                    message.metadata = WebAppMetadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pulls_data_from */ 4:\n                    message.pullsDataFrom.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pushes_data_to */ 5:\n                    message.pushesDataTo.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: WebApp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string mount_path = 2; */\n        if (message.mountPath !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.mountPath);\n        /* optional moose.proto.WebAppMetadata metadata = 3; */\n        if (message.metadata)\n            WebAppMetadata.internalBinaryWrite(message.metadata, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pulls_data_from = 4; */\n        for (let i = 0; i < message.pullsDataFrom.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pullsDataFrom[i], writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pushes_data_to = 5; */\n        for (let i = 0; i < message.pushesDataTo.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pushesDataTo[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.WebApp\n */\nexport const WebApp = new WebApp$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass WebAppMetadata$Type extends MessageType<WebAppMetadata> {\n    constructor() {\n        super(\"moose.proto.WebAppMetadata\", [\n            { no: 1, name: \"description\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<WebAppMetadata>): WebAppMetadata {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        if (value !== undefined)\n            reflectionMergePartial<WebAppMetadata>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: WebAppMetadata): WebAppMetadata {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* optional string description */ 1:\n                    message.description = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: WebAppMetadata, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* optional string description = 1; */\n        if (message.description !== undefined)\n            writer.tag(1, WireType.LengthDelimited).string(message.description);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.WebAppMetadata\n */\nexport const WebAppMetadata = new WebAppMetadata$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Workflow$Type extends MessageType<Workflow> {\n    constructor() {\n        super(\"moose.proto.Workflow\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"schedule\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"retries\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 4, name: \"timeout\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"language\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"pulls_data_from\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature },\n            { no: 7, name: \"pushes_data_to\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => InfrastructureSignature }\n        ]);\n    }\n    create(value?: PartialMessage<Workflow>): Workflow {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.schedule = \"\";\n        message.retries = 0;\n        message.timeout = \"\";\n        message.language = \"\";\n        message.pullsDataFrom = [];\n        message.pushesDataTo = [];\n        if (value !== undefined)\n            reflectionMergePartial<Workflow>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Workflow): Workflow {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string schedule */ 2:\n                    message.schedule = reader.string();\n                    break;\n                case /* uint32 retries */ 3:\n                    message.retries = reader.uint32();\n                    break;\n                case /* string timeout */ 4:\n                    message.timeout = reader.string();\n                    break;\n                case /* string language */ 5:\n                    message.language = reader.string();\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pulls_data_from */ 6:\n                    message.pullsDataFrom.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* repeated moose.proto.InfrastructureSignature pushes_data_to */ 7:\n                    message.pushesDataTo.push(InfrastructureSignature.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Workflow, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string schedule = 2; */\n        if (message.schedule !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.schedule);\n        /* uint32 retries = 3; */\n        if (message.retries !== 0)\n            writer.tag(3, WireType.Varint).uint32(message.retries);\n        /* string timeout = 4; */\n        if (message.timeout !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.timeout);\n        /* string language = 5; */\n        if (message.language !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.language);\n        /* repeated moose.proto.InfrastructureSignature pulls_data_from = 6; */\n        for (let i = 0; i < message.pullsDataFrom.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pullsDataFrom[i], writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* repeated moose.proto.InfrastructureSignature pushes_data_to = 7; */\n        for (let i = 0; i < message.pushesDataTo.length; i++)\n            InfrastructureSignature.internalBinaryWrite(message.pushesDataTo[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.Workflow\n */\nexport const Workflow = new Workflow$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass SelectRowPolicy$Type extends MessageType<SelectRowPolicy> {\n    constructor() {\n        super(\"moose.proto.SelectRowPolicy\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"tables\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => TableReference },\n            { no: 3, name: \"column\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"claim\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<SelectRowPolicy>): SelectRowPolicy {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.tables = [];\n        message.column = \"\";\n        message.claim = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<SelectRowPolicy>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: SelectRowPolicy): SelectRowPolicy {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* repeated moose.proto.TableReference tables */ 2:\n                    message.tables.push(TableReference.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* string column */ 3:\n                    message.column = reader.string();\n                    break;\n                case /* string claim */ 4:\n                    message.claim = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: SelectRowPolicy, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* repeated moose.proto.TableReference tables = 2; */\n        for (let i = 0; i < message.tables.length; i++)\n            TableReference.internalBinaryWrite(message.tables[i], writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* string column = 3; */\n        if (message.column !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.column);\n        /* string claim = 4; */\n        if (message.claim !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.claim);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.SelectRowPolicy\n */\nexport const SelectRowPolicy = new SelectRowPolicy$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryColumn$Type extends MessageType<DictionaryColumn> {\n    constructor() {\n        super(\"moose.proto.DictionaryColumn\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"type_string\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"default_value\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"expression\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"is_injective\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n            { no: 6, name: \"is_hierarchical\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n            { no: 7, name: \"is_object_id\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n            { no: 8, name: \"comment\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryColumn>): DictionaryColumn {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.typeString = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryColumn>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryColumn): DictionaryColumn {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* string type_string */ 2:\n                    message.typeString = reader.string();\n                    break;\n                case /* optional string default_value */ 3:\n                    message.defaultValue = reader.string();\n                    break;\n                case /* optional string expression */ 4:\n                    message.expression = reader.string();\n                    break;\n                case /* optional bool is_injective */ 5:\n                    message.isInjective = reader.bool();\n                    break;\n                case /* optional bool is_hierarchical */ 6:\n                    message.isHierarchical = reader.bool();\n                    break;\n                case /* optional bool is_object_id */ 7:\n                    message.isObjectId = reader.bool();\n                    break;\n                case /* optional string comment */ 8:\n                    message.comment = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryColumn, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* string type_string = 2; */\n        if (message.typeString !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.typeString);\n        /* optional string default_value = 3; */\n        if (message.defaultValue !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.defaultValue);\n        /* optional string expression = 4; */\n        if (message.expression !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.expression);\n        /* optional bool is_injective = 5; */\n        if (message.isInjective !== undefined)\n            writer.tag(5, WireType.Varint).bool(message.isInjective);\n        /* optional bool is_hierarchical = 6; */\n        if (message.isHierarchical !== undefined)\n            writer.tag(6, WireType.Varint).bool(message.isHierarchical);\n        /* optional bool is_object_id = 7; */\n        if (message.isObjectId !== undefined)\n            writer.tag(7, WireType.Varint).bool(message.isObjectId);\n        /* optional string comment = 8; */\n        if (message.comment !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.comment);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryColumn\n */\nexport const DictionaryColumn = new DictionaryColumn$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryTableSource$Type extends MessageType<DictionaryTableSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryTableSource\", [\n            { no: 1, name: \"table\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryTableSource>): DictionaryTableSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.table = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryTableSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryTableSource): DictionaryTableSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string table */ 1:\n                    message.table = reader.string();\n                    break;\n                case /* optional string database */ 2:\n                    message.database = reader.string();\n                    break;\n                case /* optional string where_clause */ 3:\n                    message.whereClause = reader.string();\n                    break;\n                case /* optional string invalidate_query */ 4:\n                    message.invalidateQuery = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryTableSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string table = 1; */\n        if (message.table !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.table);\n        /* optional string database = 2; */\n        if (message.database !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.database);\n        /* optional string where_clause = 3; */\n        if (message.whereClause !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.whereClause);\n        /* optional string invalidate_query = 4; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.invalidateQuery);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryTableSource\n */\nexport const DictionaryTableSource = new DictionaryTableSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryQuerySource$Type extends MessageType<DictionaryQuerySource> {\n    constructor() {\n        super(\"moose.proto.DictionaryQuerySource\", [\n            { no: 1, name: \"query\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryQuerySource>): DictionaryQuerySource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.query = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryQuerySource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryQuerySource): DictionaryQuerySource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string query */ 1:\n                    message.query = reader.string();\n                    break;\n                case /* optional string invalidate_query */ 2:\n                    message.invalidateQuery = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryQuerySource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string query = 1; */\n        if (message.query !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.query);\n        /* optional string invalidate_query = 2; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.invalidateQuery);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryQuerySource\n */\nexport const DictionaryQuerySource = new DictionaryQuerySource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryLayout$Type extends MessageType<DictionaryLayout> {\n    constructor() {\n        super(\"moose.proto.DictionaryLayout\", [\n            { no: 1, name: \"type\", kind: \"enum\", T: () => [\"moose.proto.DictionaryLayout.Type\", DictionaryLayout_Type] },\n            { no: 2, name: \"initial_array_size\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 3, name: \"max_load_factor\", kind: \"scalar\", opt: true, T: 1 /*ScalarType.DOUBLE*/ },\n            { no: 4, name: \"shards\", kind: \"scalar\", opt: true, T: 13 /*ScalarType.UINT32*/ },\n            { no: 5, name: \"size_in_cells\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 6, name: \"max_threads_for_updates\", kind: \"scalar\", opt: true, T: 13 /*ScalarType.UINT32*/ },\n            { no: 7, name: \"ssd_path\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"block_size\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 9, name: \"file_size\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 10, name: \"read_buffer_size\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 11, name: \"write_buffer_size\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 12, name: \"max_stored_keys\", kind: \"scalar\", opt: true, T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 13, name: \"access_to_key_from_attributes\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ },\n            { no: 14, name: \"range_lookup_strategy\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryLayout>): DictionaryLayout {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.type = 0;\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryLayout>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryLayout): DictionaryLayout {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.DictionaryLayout.Type type */ 1:\n                    message.type = reader.int32();\n                    break;\n                case /* optional uint64 initial_array_size */ 2:\n                    message.initialArraySize = reader.uint64().toBigInt();\n                    break;\n                case /* optional double max_load_factor */ 3:\n                    message.maxLoadFactor = reader.double();\n                    break;\n                case /* optional uint32 shards */ 4:\n                    message.shards = reader.uint32();\n                    break;\n                case /* optional uint64 size_in_cells */ 5:\n                    message.sizeInCells = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint32 max_threads_for_updates */ 6:\n                    message.maxThreadsForUpdates = reader.uint32();\n                    break;\n                case /* optional string ssd_path */ 7:\n                    message.ssdPath = reader.string();\n                    break;\n                case /* optional uint64 block_size */ 8:\n                    message.blockSize = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint64 file_size */ 9:\n                    message.fileSize = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint64 read_buffer_size */ 10:\n                    message.readBufferSize = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint64 write_buffer_size */ 11:\n                    message.writeBufferSize = reader.uint64().toBigInt();\n                    break;\n                case /* optional uint64 max_stored_keys */ 12:\n                    message.maxStoredKeys = reader.uint64().toBigInt();\n                    break;\n                case /* optional bool access_to_key_from_attributes */ 13:\n                    message.accessToKeyFromAttributes = reader.bool();\n                    break;\n                case /* optional string range_lookup_strategy */ 14:\n                    message.rangeLookupStrategy = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryLayout, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.DictionaryLayout.Type type = 1; */\n        if (message.type !== 0)\n            writer.tag(1, WireType.Varint).int32(message.type);\n        /* optional uint64 initial_array_size = 2; */\n        if (message.initialArraySize !== undefined)\n            writer.tag(2, WireType.Varint).uint64(message.initialArraySize);\n        /* optional double max_load_factor = 3; */\n        if (message.maxLoadFactor !== undefined)\n            writer.tag(3, WireType.Bit64).double(message.maxLoadFactor);\n        /* optional uint32 shards = 4; */\n        if (message.shards !== undefined)\n            writer.tag(4, WireType.Varint).uint32(message.shards);\n        /* optional uint64 size_in_cells = 5; */\n        if (message.sizeInCells !== undefined)\n            writer.tag(5, WireType.Varint).uint64(message.sizeInCells);\n        /* optional uint32 max_threads_for_updates = 6; */\n        if (message.maxThreadsForUpdates !== undefined)\n            writer.tag(6, WireType.Varint).uint32(message.maxThreadsForUpdates);\n        /* optional string ssd_path = 7; */\n        if (message.ssdPath !== undefined)\n            writer.tag(7, WireType.LengthDelimited).string(message.ssdPath);\n        /* optional uint64 block_size = 8; */\n        if (message.blockSize !== undefined)\n            writer.tag(8, WireType.Varint).uint64(message.blockSize);\n        /* optional uint64 file_size = 9; */\n        if (message.fileSize !== undefined)\n            writer.tag(9, WireType.Varint).uint64(message.fileSize);\n        /* optional uint64 read_buffer_size = 10; */\n        if (message.readBufferSize !== undefined)\n            writer.tag(10, WireType.Varint).uint64(message.readBufferSize);\n        /* optional uint64 write_buffer_size = 11; */\n        if (message.writeBufferSize !== undefined)\n            writer.tag(11, WireType.Varint).uint64(message.writeBufferSize);\n        /* optional uint64 max_stored_keys = 12; */\n        if (message.maxStoredKeys !== undefined)\n            writer.tag(12, WireType.Varint).uint64(message.maxStoredKeys);\n        /* optional bool access_to_key_from_attributes = 13; */\n        if (message.accessToKeyFromAttributes !== undefined)\n            writer.tag(13, WireType.Varint).bool(message.accessToKeyFromAttributes);\n        /* optional string range_lookup_strategy = 14; */\n        if (message.rangeLookupStrategy !== undefined)\n            writer.tag(14, WireType.LengthDelimited).string(message.rangeLookupStrategy);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryLayout\n */\nexport const DictionaryLayout = new DictionaryLayout$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryRangeLifetime$Type extends MessageType<DictionaryRangeLifetime> {\n    constructor() {\n        super(\"moose.proto.DictionaryRangeLifetime\", [\n            { no: 1, name: \"min\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 2, name: \"max\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryRangeLifetime>): DictionaryRangeLifetime {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.min = 0n;\n        message.max = 0n;\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryRangeLifetime>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryRangeLifetime): DictionaryRangeLifetime {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* uint64 min */ 1:\n                    message.min = reader.uint64().toBigInt();\n                    break;\n                case /* uint64 max */ 2:\n                    message.max = reader.uint64().toBigInt();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryRangeLifetime, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* uint64 min = 1; */\n        if (message.min !== 0n)\n            writer.tag(1, WireType.Varint).uint64(message.min);\n        /* uint64 max = 2; */\n        if (message.max !== 0n)\n            writer.tag(2, WireType.Varint).uint64(message.max);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryRangeLifetime\n */\nexport const DictionaryRangeLifetime = new DictionaryRangeLifetime$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryLifetime$Type extends MessageType<DictionaryLifetime> {\n    constructor() {\n        super(\"moose.proto.DictionaryLifetime\", [\n            { no: 1, name: \"static_lifetime\", kind: \"scalar\", oneof: \"t\", T: 8 /*ScalarType.BOOL*/ },\n            { no: 2, name: \"single\", kind: \"scalar\", oneof: \"t\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 3, name: \"range\", kind: \"message\", oneof: \"t\", T: () => DictionaryRangeLifetime }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryLifetime>): DictionaryLifetime {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.t = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryLifetime>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryLifetime): DictionaryLifetime {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* bool static_lifetime */ 1:\n                    message.t = {\n                        oneofKind: \"staticLifetime\",\n                        staticLifetime: reader.bool()\n                    };\n                    break;\n                case /* uint64 single */ 2:\n                    message.t = {\n                        oneofKind: \"single\",\n                        single: reader.uint64().toBigInt()\n                    };\n                    break;\n                case /* moose.proto.DictionaryRangeLifetime range */ 3:\n                    message.t = {\n                        oneofKind: \"range\",\n                        range: DictionaryRangeLifetime.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).range)\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryLifetime, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* bool static_lifetime = 1; */\n        if (message.t.oneofKind === \"staticLifetime\")\n            writer.tag(1, WireType.Varint).bool(message.t.staticLifetime);\n        /* uint64 single = 2; */\n        if (message.t.oneofKind === \"single\")\n            writer.tag(2, WireType.Varint).uint64(message.t.single);\n        /* moose.proto.DictionaryRangeLifetime range = 3; */\n        if (message.t.oneofKind === \"range\")\n            DictionaryRangeLifetime.internalBinaryWrite(message.t.range, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryLifetime\n */\nexport const DictionaryLifetime = new DictionaryLifetime$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryHttpSource$Type extends MessageType<DictionaryHttpSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryHttpSource\", [\n            { no: 1, name: \"url\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"format\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"method\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryHttpSource>): DictionaryHttpSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.url = \"\";\n        message.format = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryHttpSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryHttpSource): DictionaryHttpSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string url */ 1:\n                    message.url = reader.string();\n                    break;\n                case /* string format */ 2:\n                    message.format = reader.string();\n                    break;\n                case /* optional string method */ 3:\n                    message.method = reader.string();\n                    break;\n                case /* optional string where_clause */ 4:\n                    message.whereClause = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryHttpSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string url = 1; */\n        if (message.url !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.url);\n        /* string format = 2; */\n        if (message.format !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.format);\n        /* optional string method = 3; */\n        if (message.method !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.method);\n        /* optional string where_clause = 4; */\n        if (message.whereClause !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.whereClause);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryHttpSource\n */\nexport const DictionaryHttpSource = new DictionaryHttpSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryClickHouseSource$Type extends MessageType<DictionaryClickHouseSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryClickHouseSource\", [\n            { no: 1, name: \"host\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"port\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 3, name: \"user\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"password\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"db\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"table\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 7, name: \"query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 9, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryClickHouseSource>): DictionaryClickHouseSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.host = \"\";\n        message.port = 0;\n        message.user = \"\";\n        message.password = \"\";\n        message.db = \"\";\n        message.table = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryClickHouseSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryClickHouseSource): DictionaryClickHouseSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string host */ 1:\n                    message.host = reader.string();\n                    break;\n                case /* uint32 port */ 2:\n                    message.port = reader.uint32();\n                    break;\n                case /* string user */ 3:\n                    message.user = reader.string();\n                    break;\n                case /* string password */ 4:\n                    message.password = reader.string();\n                    break;\n                case /* string db */ 5:\n                    message.db = reader.string();\n                    break;\n                case /* string table */ 6:\n                    message.table = reader.string();\n                    break;\n                case /* optional string query */ 7:\n                    message.query = reader.string();\n                    break;\n                case /* optional string where_clause */ 8:\n                    message.whereClause = reader.string();\n                    break;\n                case /* optional string invalidate_query */ 9:\n                    message.invalidateQuery = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryClickHouseSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string host = 1; */\n        if (message.host !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.host);\n        /* uint32 port = 2; */\n        if (message.port !== 0)\n            writer.tag(2, WireType.Varint).uint32(message.port);\n        /* string user = 3; */\n        if (message.user !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.user);\n        /* string password = 4; */\n        if (message.password !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.password);\n        /* string db = 5; */\n        if (message.db !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.db);\n        /* string table = 6; */\n        if (message.table !== \"\")\n            writer.tag(6, WireType.LengthDelimited).string(message.table);\n        /* optional string query = 7; */\n        if (message.query !== undefined)\n            writer.tag(7, WireType.LengthDelimited).string(message.query);\n        /* optional string where_clause = 8; */\n        if (message.whereClause !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.whereClause);\n        /* optional string invalidate_query = 9; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(9, WireType.LengthDelimited).string(message.invalidateQuery);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryClickHouseSource\n */\nexport const DictionaryClickHouseSource = new DictionaryClickHouseSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryMysqlSource$Type extends MessageType<DictionaryMysqlSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryMysqlSource\", [\n            { no: 1, name: \"host\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"port\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 3, name: \"user\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"password\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"db\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"table\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 7, name: \"query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 9, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryMysqlSource>): DictionaryMysqlSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.host = \"\";\n        message.port = 0;\n        message.user = \"\";\n        message.password = \"\";\n        message.db = \"\";\n        message.table = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryMysqlSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryMysqlSource): DictionaryMysqlSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string host */ 1:\n                    message.host = reader.string();\n                    break;\n                case /* uint32 port */ 2:\n                    message.port = reader.uint32();\n                    break;\n                case /* string user */ 3:\n                    message.user = reader.string();\n                    break;\n                case /* string password */ 4:\n                    message.password = reader.string();\n                    break;\n                case /* string db */ 5:\n                    message.db = reader.string();\n                    break;\n                case /* string table */ 6:\n                    message.table = reader.string();\n                    break;\n                case /* optional string query */ 7:\n                    message.query = reader.string();\n                    break;\n                case /* optional string where_clause */ 8:\n                    message.whereClause = reader.string();\n                    break;\n                case /* optional string invalidate_query */ 9:\n                    message.invalidateQuery = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryMysqlSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string host = 1; */\n        if (message.host !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.host);\n        /* uint32 port = 2; */\n        if (message.port !== 0)\n            writer.tag(2, WireType.Varint).uint32(message.port);\n        /* string user = 3; */\n        if (message.user !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.user);\n        /* string password = 4; */\n        if (message.password !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.password);\n        /* string db = 5; */\n        if (message.db !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.db);\n        /* string table = 6; */\n        if (message.table !== \"\")\n            writer.tag(6, WireType.LengthDelimited).string(message.table);\n        /* optional string query = 7; */\n        if (message.query !== undefined)\n            writer.tag(7, WireType.LengthDelimited).string(message.query);\n        /* optional string where_clause = 8; */\n        if (message.whereClause !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.whereClause);\n        /* optional string invalidate_query = 9; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(9, WireType.LengthDelimited).string(message.invalidateQuery);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryMysqlSource\n */\nexport const DictionaryMysqlSource = new DictionaryMysqlSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryPostgresqlSource$Type extends MessageType<DictionaryPostgresqlSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryPostgresqlSource\", [\n            { no: 1, name: \"host\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"port\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 3, name: \"user\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"password\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"db\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"table\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 7, name: \"query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"where_clause\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 9, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryPostgresqlSource>): DictionaryPostgresqlSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.host = \"\";\n        message.port = 0;\n        message.user = \"\";\n        message.password = \"\";\n        message.db = \"\";\n        message.table = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryPostgresqlSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryPostgresqlSource): DictionaryPostgresqlSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string host */ 1:\n                    message.host = reader.string();\n                    break;\n                case /* uint32 port */ 2:\n                    message.port = reader.uint32();\n                    break;\n                case /* string user */ 3:\n                    message.user = reader.string();\n                    break;\n                case /* string password */ 4:\n                    message.password = reader.string();\n                    break;\n                case /* string db */ 5:\n                    message.db = reader.string();\n                    break;\n                case /* string table */ 6:\n                    message.table = reader.string();\n                    break;\n                case /* optional string query */ 7:\n                    message.query = reader.string();\n                    break;\n                case /* optional string where_clause */ 8:\n                    message.whereClause = reader.string();\n                    break;\n                case /* optional string invalidate_query */ 9:\n                    message.invalidateQuery = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryPostgresqlSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string host = 1; */\n        if (message.host !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.host);\n        /* uint32 port = 2; */\n        if (message.port !== 0)\n            writer.tag(2, WireType.Varint).uint32(message.port);\n        /* string user = 3; */\n        if (message.user !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.user);\n        /* string password = 4; */\n        if (message.password !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.password);\n        /* string db = 5; */\n        if (message.db !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.db);\n        /* string table = 6; */\n        if (message.table !== \"\")\n            writer.tag(6, WireType.LengthDelimited).string(message.table);\n        /* optional string query = 7; */\n        if (message.query !== undefined)\n            writer.tag(7, WireType.LengthDelimited).string(message.query);\n        /* optional string where_clause = 8; */\n        if (message.whereClause !== undefined)\n            writer.tag(8, WireType.LengthDelimited).string(message.whereClause);\n        /* optional string invalidate_query = 9; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(9, WireType.LengthDelimited).string(message.invalidateQuery);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryPostgresqlSource\n */\nexport const DictionaryPostgresqlSource = new DictionaryPostgresqlSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryRedisSource$Type extends MessageType<DictionaryRedisSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryRedisSource\", [\n            { no: 1, name: \"host\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"port\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 3, name: \"password\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"db_index\", kind: \"scalar\", opt: true, T: 13 /*ScalarType.UINT32*/ },\n            { no: 5, name: \"storage_type\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryRedisSource>): DictionaryRedisSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.host = \"\";\n        message.port = 0;\n        message.storageType = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryRedisSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryRedisSource): DictionaryRedisSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string host */ 1:\n                    message.host = reader.string();\n                    break;\n                case /* uint32 port */ 2:\n                    message.port = reader.uint32();\n                    break;\n                case /* optional string password */ 3:\n                    message.password = reader.string();\n                    break;\n                case /* optional uint32 db_index */ 4:\n                    message.dbIndex = reader.uint32();\n                    break;\n                case /* string storage_type */ 5:\n                    message.storageType = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryRedisSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string host = 1; */\n        if (message.host !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.host);\n        /* uint32 port = 2; */\n        if (message.port !== 0)\n            writer.tag(2, WireType.Varint).uint32(message.port);\n        /* optional string password = 3; */\n        if (message.password !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.password);\n        /* optional uint32 db_index = 4; */\n        if (message.dbIndex !== undefined)\n            writer.tag(4, WireType.Varint).uint32(message.dbIndex);\n        /* string storage_type = 5; */\n        if (message.storageType !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.storageType);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryRedisSource\n */\nexport const DictionaryRedisSource = new DictionaryRedisSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryMongoDbSource$Type extends MessageType<DictionaryMongoDbSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryMongoDbSource\", [\n            { no: 1, name: \"host\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"port\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ },\n            { no: 3, name: \"user\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"password\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 5, name: \"db\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 6, name: \"collection\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryMongoDbSource>): DictionaryMongoDbSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.host = \"\";\n        message.port = 0;\n        message.user = \"\";\n        message.password = \"\";\n        message.db = \"\";\n        message.collection = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryMongoDbSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryMongoDbSource): DictionaryMongoDbSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string host */ 1:\n                    message.host = reader.string();\n                    break;\n                case /* uint32 port */ 2:\n                    message.port = reader.uint32();\n                    break;\n                case /* string user */ 3:\n                    message.user = reader.string();\n                    break;\n                case /* string password */ 4:\n                    message.password = reader.string();\n                    break;\n                case /* string db */ 5:\n                    message.db = reader.string();\n                    break;\n                case /* string collection */ 6:\n                    message.collection = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryMongoDbSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string host = 1; */\n        if (message.host !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.host);\n        /* uint32 port = 2; */\n        if (message.port !== 0)\n            writer.tag(2, WireType.Varint).uint32(message.port);\n        /* string user = 3; */\n        if (message.user !== \"\")\n            writer.tag(3, WireType.LengthDelimited).string(message.user);\n        /* string password = 4; */\n        if (message.password !== \"\")\n            writer.tag(4, WireType.LengthDelimited).string(message.password);\n        /* string db = 5; */\n        if (message.db !== \"\")\n            writer.tag(5, WireType.LengthDelimited).string(message.db);\n        /* string collection = 6; */\n        if (message.collection !== \"\")\n            writer.tag(6, WireType.LengthDelimited).string(message.collection);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryMongoDbSource\n */\nexport const DictionaryMongoDbSource = new DictionaryMongoDbSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryExecutableSource$Type extends MessageType<DictionaryExecutableSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryExecutableSource\", [\n            { no: 1, name: \"command\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"format\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"implicit_key\", kind: \"scalar\", opt: true, T: 8 /*ScalarType.BOOL*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryExecutableSource>): DictionaryExecutableSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.command = \"\";\n        message.format = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryExecutableSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryExecutableSource): DictionaryExecutableSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string command */ 1:\n                    message.command = reader.string();\n                    break;\n                case /* string format */ 2:\n                    message.format = reader.string();\n                    break;\n                case /* optional bool implicit_key */ 3:\n                    message.implicitKey = reader.bool();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryExecutableSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string command = 1; */\n        if (message.command !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.command);\n        /* string format = 2; */\n        if (message.format !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.format);\n        /* optional bool implicit_key = 3; */\n        if (message.implicitKey !== undefined)\n            writer.tag(3, WireType.Varint).bool(message.implicitKey);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryExecutableSource\n */\nexport const DictionaryExecutableSource = new DictionaryExecutableSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryS3Source$Type extends MessageType<DictionaryS3Source> {\n    constructor() {\n        super(\"moose.proto.DictionaryS3Source\", [\n            { no: 1, name: \"url\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"format\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"access_key_id\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"secret_access_key\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryS3Source>): DictionaryS3Source {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.url = \"\";\n        message.format = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryS3Source>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryS3Source): DictionaryS3Source {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string url */ 1:\n                    message.url = reader.string();\n                    break;\n                case /* string format */ 2:\n                    message.format = reader.string();\n                    break;\n                case /* optional string access_key_id */ 3:\n                    message.accessKeyId = reader.string();\n                    break;\n                case /* optional string secret_access_key */ 4:\n                    message.secretAccessKey = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryS3Source, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string url = 1; */\n        if (message.url !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.url);\n        /* string format = 2; */\n        if (message.format !== \"\")\n            writer.tag(2, WireType.LengthDelimited).string(message.format);\n        /* optional string access_key_id = 3; */\n        if (message.accessKeyId !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.accessKeyId);\n        /* optional string secret_access_key = 4; */\n        if (message.secretAccessKey !== undefined)\n            writer.tag(4, WireType.LengthDelimited).string(message.secretAccessKey);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryS3Source\n */\nexport const DictionaryS3Source = new DictionaryS3Source$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass DictionaryExternalSource$Type extends MessageType<DictionaryExternalSource> {\n    constructor() {\n        super(\"moose.proto.DictionaryExternalSource\", [\n            { no: 1, name: \"http\", kind: \"message\", oneof: \"t\", T: () => DictionaryHttpSource },\n            { no: 2, name: \"clickhouse\", kind: \"message\", oneof: \"t\", T: () => DictionaryClickHouseSource },\n            { no: 3, name: \"mysql\", kind: \"message\", oneof: \"t\", T: () => DictionaryMysqlSource },\n            { no: 4, name: \"postgresql\", kind: \"message\", oneof: \"t\", T: () => DictionaryPostgresqlSource },\n            { no: 5, name: \"redis\", kind: \"message\", oneof: \"t\", T: () => DictionaryRedisSource },\n            { no: 6, name: \"mongodb\", kind: \"message\", oneof: \"t\", T: () => DictionaryMongoDbSource },\n            { no: 7, name: \"executable\", kind: \"message\", oneof: \"t\", T: () => DictionaryExecutableSource },\n            { no: 8, name: \"s3\", kind: \"message\", oneof: \"t\", T: () => DictionaryS3Source }\n        ]);\n    }\n    create(value?: PartialMessage<DictionaryExternalSource>): DictionaryExternalSource {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.t = { oneofKind: undefined };\n        if (value !== undefined)\n            reflectionMergePartial<DictionaryExternalSource>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DictionaryExternalSource): DictionaryExternalSource {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* moose.proto.DictionaryHttpSource http */ 1:\n                    message.t = {\n                        oneofKind: \"http\",\n                        http: DictionaryHttpSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).http)\n                    };\n                    break;\n                case /* moose.proto.DictionaryClickHouseSource clickhouse */ 2:\n                    message.t = {\n                        oneofKind: \"clickhouse\",\n                        clickhouse: DictionaryClickHouseSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).clickhouse)\n                    };\n                    break;\n                case /* moose.proto.DictionaryMysqlSource mysql */ 3:\n                    message.t = {\n                        oneofKind: \"mysql\",\n                        mysql: DictionaryMysqlSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).mysql)\n                    };\n                    break;\n                case /* moose.proto.DictionaryPostgresqlSource postgresql */ 4:\n                    message.t = {\n                        oneofKind: \"postgresql\",\n                        postgresql: DictionaryPostgresqlSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).postgresql)\n                    };\n                    break;\n                case /* moose.proto.DictionaryRedisSource redis */ 5:\n                    message.t = {\n                        oneofKind: \"redis\",\n                        redis: DictionaryRedisSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).redis)\n                    };\n                    break;\n                case /* moose.proto.DictionaryMongoDbSource mongodb */ 6:\n                    message.t = {\n                        oneofKind: \"mongodb\",\n                        mongodb: DictionaryMongoDbSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).mongodb)\n                    };\n                    break;\n                case /* moose.proto.DictionaryExecutableSource executable */ 7:\n                    message.t = {\n                        oneofKind: \"executable\",\n                        executable: DictionaryExecutableSource.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).executable)\n                    };\n                    break;\n                case /* moose.proto.DictionaryS3Source s3 */ 8:\n                    message.t = {\n                        oneofKind: \"s3\",\n                        s3: DictionaryS3Source.internalBinaryRead(reader, reader.uint32(), options, (message.t as any).s3)\n                    };\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DictionaryExternalSource, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* moose.proto.DictionaryHttpSource http = 1; */\n        if (message.t.oneofKind === \"http\")\n            DictionaryHttpSource.internalBinaryWrite(message.t.http, writer.tag(1, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryClickHouseSource clickhouse = 2; */\n        if (message.t.oneofKind === \"clickhouse\")\n            DictionaryClickHouseSource.internalBinaryWrite(message.t.clickhouse, writer.tag(2, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryMysqlSource mysql = 3; */\n        if (message.t.oneofKind === \"mysql\")\n            DictionaryMysqlSource.internalBinaryWrite(message.t.mysql, writer.tag(3, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryPostgresqlSource postgresql = 4; */\n        if (message.t.oneofKind === \"postgresql\")\n            DictionaryPostgresqlSource.internalBinaryWrite(message.t.postgresql, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryRedisSource redis = 5; */\n        if (message.t.oneofKind === \"redis\")\n            DictionaryRedisSource.internalBinaryWrite(message.t.redis, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryMongoDbSource mongodb = 6; */\n        if (message.t.oneofKind === \"mongodb\")\n            DictionaryMongoDbSource.internalBinaryWrite(message.t.mongodb, writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryExecutableSource executable = 7; */\n        if (message.t.oneofKind === \"executable\")\n            DictionaryExecutableSource.internalBinaryWrite(message.t.executable, writer.tag(7, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryS3Source s3 = 8; */\n        if (message.t.oneofKind === \"s3\")\n            DictionaryS3Source.internalBinaryWrite(message.t.s3, writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.DictionaryExternalSource\n */\nexport const DictionaryExternalSource = new DictionaryExternalSource$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass OlapDictionary$Type extends MessageType<OlapDictionary> {\n    constructor() {\n        super(\"moose.proto.OlapDictionary\", [\n            { no: 1, name: \"name\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ },\n            { no: 2, name: \"database\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 3, name: \"cluster_name\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 4, name: \"table_source\", kind: \"message\", oneof: \"source\", T: () => DictionaryTableSource },\n            { no: 5, name: \"query_source\", kind: \"message\", oneof: \"source\", T: () => DictionaryQuerySource },\n            { no: 6, name: \"external_source\", kind: \"message\", oneof: \"source\", T: () => DictionaryExternalSource },\n            { no: 7, name: \"primary_key\", kind: \"scalar\", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },\n            { no: 8, name: \"columns\", kind: \"message\", repeat: 2 /*RepeatType.UNPACKED*/, T: () => DictionaryColumn },\n            { no: 9, name: \"layout\", kind: \"message\", T: () => DictionaryLayout },\n            { no: 10, name: \"lifetime\", kind: \"message\", T: () => DictionaryLifetime },\n            { no: 11, name: \"invalidate_query\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 12, name: \"settings\", kind: \"map\", K: 9 /*ScalarType.STRING*/, V: { kind: \"scalar\", T: 9 /*ScalarType.STRING*/ } },\n            { no: 13, name: \"comment\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ },\n            { no: 14, name: \"life_cycle\", kind: \"enum\", T: () => [\"moose.proto.LifeCycle\", LifeCycle] },\n            { no: 15, name: \"metadata\", kind: \"message\", T: () => Metadata },\n            { no: 16, name: \"version\", kind: \"scalar\", opt: true, T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    create(value?: PartialMessage<OlapDictionary>): OlapDictionary {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.name = \"\";\n        message.source = { oneofKind: undefined };\n        message.primaryKey = [];\n        message.columns = [];\n        message.settings = {};\n        message.lifeCycle = 0;\n        if (value !== undefined)\n            reflectionMergePartial<OlapDictionary>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: OlapDictionary): OlapDictionary {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string name */ 1:\n                    message.name = reader.string();\n                    break;\n                case /* optional string database */ 2:\n                    message.database = reader.string();\n                    break;\n                case /* optional string cluster_name */ 3:\n                    message.clusterName = reader.string();\n                    break;\n                case /* moose.proto.DictionaryTableSource table_source */ 4:\n                    message.source = {\n                        oneofKind: \"tableSource\",\n                        tableSource: DictionaryTableSource.internalBinaryRead(reader, reader.uint32(), options, (message.source as any).tableSource)\n                    };\n                    break;\n                case /* moose.proto.DictionaryQuerySource query_source */ 5:\n                    message.source = {\n                        oneofKind: \"querySource\",\n                        querySource: DictionaryQuerySource.internalBinaryRead(reader, reader.uint32(), options, (message.source as any).querySource)\n                    };\n                    break;\n                case /* moose.proto.DictionaryExternalSource external_source */ 6:\n                    message.source = {\n                        oneofKind: \"externalSource\",\n                        externalSource: DictionaryExternalSource.internalBinaryRead(reader, reader.uint32(), options, (message.source as any).externalSource)\n                    };\n                    break;\n                case /* repeated string primary_key */ 7:\n                    message.primaryKey.push(reader.string());\n                    break;\n                case /* repeated moose.proto.DictionaryColumn columns */ 8:\n                    message.columns.push(DictionaryColumn.internalBinaryRead(reader, reader.uint32(), options));\n                    break;\n                case /* moose.proto.DictionaryLayout layout */ 9:\n                    message.layout = DictionaryLayout.internalBinaryRead(reader, reader.uint32(), options, message.layout);\n                    break;\n                case /* moose.proto.DictionaryLifetime lifetime */ 10:\n                    message.lifetime = DictionaryLifetime.internalBinaryRead(reader, reader.uint32(), options, message.lifetime);\n                    break;\n                case /* optional string invalidate_query */ 11:\n                    message.invalidateQuery = reader.string();\n                    break;\n                case /* map<string, string> settings */ 12:\n                    this.binaryReadMap12(message.settings, reader, options);\n                    break;\n                case /* optional string comment */ 13:\n                    message.comment = reader.string();\n                    break;\n                case /* moose.proto.LifeCycle life_cycle */ 14:\n                    message.lifeCycle = reader.int32();\n                    break;\n                case /* optional moose.proto.Metadata metadata */ 15:\n                    message.metadata = Metadata.internalBinaryRead(reader, reader.uint32(), options, message.metadata);\n                    break;\n                case /* optional string version */ 16:\n                    message.version = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    private binaryReadMap12(map: OlapDictionary[\"settings\"], reader: IBinaryReader, options: BinaryReadOptions): void {\n        let len = reader.uint32(), end = reader.pos + len, key: keyof OlapDictionary[\"settings\"] | undefined, val: OlapDictionary[\"settings\"][any] | undefined;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case 1:\n                    key = reader.string();\n                    break;\n                case 2:\n                    val = reader.string();\n                    break;\n                default: throw new globalThis.Error(\"unknown map entry field for moose.proto.OlapDictionary.settings\");\n            }\n        }\n        map[key ?? \"\"] = val ?? \"\";\n    }\n    internalBinaryWrite(message: OlapDictionary, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string name = 1; */\n        if (message.name !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.name);\n        /* optional string database = 2; */\n        if (message.database !== undefined)\n            writer.tag(2, WireType.LengthDelimited).string(message.database);\n        /* optional string cluster_name = 3; */\n        if (message.clusterName !== undefined)\n            writer.tag(3, WireType.LengthDelimited).string(message.clusterName);\n        /* moose.proto.DictionaryTableSource table_source = 4; */\n        if (message.source.oneofKind === \"tableSource\")\n            DictionaryTableSource.internalBinaryWrite(message.source.tableSource, writer.tag(4, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryQuerySource query_source = 5; */\n        if (message.source.oneofKind === \"querySource\")\n            DictionaryQuerySource.internalBinaryWrite(message.source.querySource, writer.tag(5, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryExternalSource external_source = 6; */\n        if (message.source.oneofKind === \"externalSource\")\n            DictionaryExternalSource.internalBinaryWrite(message.source.externalSource, writer.tag(6, WireType.LengthDelimited).fork(), options).join();\n        /* repeated string primary_key = 7; */\n        for (let i = 0; i < message.primaryKey.length; i++)\n            writer.tag(7, WireType.LengthDelimited).string(message.primaryKey[i]);\n        /* repeated moose.proto.DictionaryColumn columns = 8; */\n        for (let i = 0; i < message.columns.length; i++)\n            DictionaryColumn.internalBinaryWrite(message.columns[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryLayout layout = 9; */\n        if (message.layout)\n            DictionaryLayout.internalBinaryWrite(message.layout, writer.tag(9, WireType.LengthDelimited).fork(), options).join();\n        /* moose.proto.DictionaryLifetime lifetime = 10; */\n        if (message.lifetime)\n            DictionaryLifetime.internalBinaryWrite(message.lifetime, writer.tag(10, WireType.LengthDelimited).fork(), options).join();\n        /* optional string invalidate_query = 11; */\n        if (message.invalidateQuery !== undefined)\n            writer.tag(11, WireType.LengthDelimited).string(message.invalidateQuery);\n        /* map<string, string> settings = 12; */\n        for (let k of globalThis.Object.keys(message.settings))\n            writer.tag(12, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k).tag(2, WireType.LengthDelimited).string(message.settings[k]).join();\n        /* optional string comment = 13; */\n        if (message.comment !== undefined)\n            writer.tag(13, WireType.LengthDelimited).string(message.comment);\n        /* moose.proto.LifeCycle life_cycle = 14; */\n        if (message.lifeCycle !== 0)\n            writer.tag(14, WireType.Varint).int32(message.lifeCycle);\n        /* optional moose.proto.Metadata metadata = 15; */\n        if (message.metadata)\n            Metadata.internalBinaryWrite(message.metadata, writer.tag(15, WireType.LengthDelimited).fork(), options).join();\n        /* optional string version = 16; */\n        if (message.version !== undefined)\n            writer.tag(16, WireType.LengthDelimited).string(message.version);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message moose.proto.OlapDictionary\n */\nexport const OlapDictionary = new OlapDictionary$Type();\n","// @generated by protobuf-ts 2.11.1\n// @generated from protobuf file \"google/protobuf/wrappers.proto\" (package \"google.protobuf\", syntax proto3)\n// tslint:disable\n//\n// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc.  All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n//     * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n//     * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n//     * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n// Wrappers for primitive (non-message) types. These types were needed\n// for legacy reasons and are not recommended for use in new APIs.\n//\n// Historically these wrappers were useful to have presence on proto3 primitive\n// fields, but proto3 syntax has been updated to support the `optional` keyword.\n// Using that keyword is now the strongly preferred way to add presence to\n// proto3 primitive fields.\n//\n// A secondary usecase was to embed primitives in the `google.protobuf.Any`\n// type: it is now recommended that you embed your value in your own wrapper\n// message which can be specifically documented.\n//\n// These wrappers have no meaningful use within repeated fields as they lack\n// the ability to detect presence on individual elements.\n// These wrappers have no meaningful use within a map or a oneof since\n// individual entries of a map or fields of a oneof can already detect presence.\n//\nimport { ScalarType } from \"@protobuf-ts/runtime\";\nimport { LongType } from \"@protobuf-ts/runtime\";\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport type { JsonValue } from \"@protobuf-ts/runtime\";\nimport type { JsonReadOptions } from \"@protobuf-ts/runtime\";\nimport type { JsonWriteOptions } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\n/**\n * Wrapper message for `double`.\n *\n * The JSON representation for `DoubleValue` is JSON number.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.DoubleValue\n */\nexport interface DoubleValue {\n    /**\n     * The double value.\n     *\n     * @generated from protobuf field: double value = 1\n     */\n    value: number;\n}\n/**\n * Wrapper message for `float`.\n *\n * The JSON representation for `FloatValue` is JSON number.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.FloatValue\n */\nexport interface FloatValue {\n    /**\n     * The float value.\n     *\n     * @generated from protobuf field: float value = 1\n     */\n    value: number;\n}\n/**\n * Wrapper message for `int64`.\n *\n * The JSON representation for `Int64Value` is JSON string.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.Int64Value\n */\nexport interface Int64Value {\n    /**\n     * The int64 value.\n     *\n     * @generated from protobuf field: int64 value = 1\n     */\n    value: bigint;\n}\n/**\n * Wrapper message for `uint64`.\n *\n * The JSON representation for `UInt64Value` is JSON string.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.UInt64Value\n */\nexport interface UInt64Value {\n    /**\n     * The uint64 value.\n     *\n     * @generated from protobuf field: uint64 value = 1\n     */\n    value: bigint;\n}\n/**\n * Wrapper message for `int32`.\n *\n * The JSON representation for `Int32Value` is JSON number.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.Int32Value\n */\nexport interface Int32Value {\n    /**\n     * The int32 value.\n     *\n     * @generated from protobuf field: int32 value = 1\n     */\n    value: number;\n}\n/**\n * Wrapper message for `uint32`.\n *\n * The JSON representation for `UInt32Value` is JSON number.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.UInt32Value\n */\nexport interface UInt32Value {\n    /**\n     * The uint32 value.\n     *\n     * @generated from protobuf field: uint32 value = 1\n     */\n    value: number;\n}\n/**\n * Wrapper message for `bool`.\n *\n * The JSON representation for `BoolValue` is JSON `true` and `false`.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.BoolValue\n */\nexport interface BoolValue {\n    /**\n     * The bool value.\n     *\n     * @generated from protobuf field: bool value = 1\n     */\n    value: boolean;\n}\n/**\n * Wrapper message for `string`.\n *\n * The JSON representation for `StringValue` is JSON string.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.StringValue\n */\nexport interface StringValue {\n    /**\n     * The string value.\n     *\n     * @generated from protobuf field: string value = 1\n     */\n    value: string;\n}\n/**\n * Wrapper message for `bytes`.\n *\n * The JSON representation for `BytesValue` is JSON string.\n *\n * Not recommended for use in new APIs, but still useful for legacy APIs and\n * has no plan to be removed.\n *\n * @generated from protobuf message google.protobuf.BytesValue\n */\nexport interface BytesValue {\n    /**\n     * The bytes value.\n     *\n     * @generated from protobuf field: bytes value = 1\n     */\n    value: Uint8Array;\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass DoubleValue$Type extends MessageType<DoubleValue> {\n    constructor() {\n        super(\"google.protobuf.DoubleValue\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 1 /*ScalarType.DOUBLE*/ }\n        ]);\n    }\n    /**\n     * Encode `DoubleValue` to JSON number.\n     */\n    internalJsonWrite(message: DoubleValue, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(2, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `DoubleValue` from JSON number.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: DoubleValue): DoubleValue {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 1, undefined, \"value\") as number;\n        return target;\n    }\n    create(value?: PartialMessage<DoubleValue>): DoubleValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0;\n        if (value !== undefined)\n            reflectionMergePartial<DoubleValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DoubleValue): DoubleValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* double value */ 1:\n                    message.value = reader.double();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: DoubleValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* double value = 1; */\n        if (message.value !== 0)\n            writer.tag(1, WireType.Bit64).double(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.DoubleValue\n */\nexport const DoubleValue = new DoubleValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass FloatValue$Type extends MessageType<FloatValue> {\n    constructor() {\n        super(\"google.protobuf.FloatValue\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 2 /*ScalarType.FLOAT*/ }\n        ]);\n    }\n    /**\n     * Encode `FloatValue` to JSON number.\n     */\n    internalJsonWrite(message: FloatValue, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(1, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `FloatValue` from JSON number.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: FloatValue): FloatValue {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 1, undefined, \"value\") as number;\n        return target;\n    }\n    create(value?: PartialMessage<FloatValue>): FloatValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0;\n        if (value !== undefined)\n            reflectionMergePartial<FloatValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FloatValue): FloatValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* float value */ 1:\n                    message.value = reader.float();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: FloatValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* float value = 1; */\n        if (message.value !== 0)\n            writer.tag(1, WireType.Bit32).float(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.FloatValue\n */\nexport const FloatValue = new FloatValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Int64Value$Type extends MessageType<Int64Value> {\n    constructor() {\n        super(\"google.protobuf.Int64Value\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ }\n        ]);\n    }\n    /**\n     * Encode `Int64Value` to JSON string.\n     */\n    internalJsonWrite(message: Int64Value, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(ScalarType.INT64, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `Int64Value` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: Int64Value): Int64Value {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, ScalarType.INT64, LongType.BIGINT, \"value\") as any;\n        return target;\n    }\n    create(value?: PartialMessage<Int64Value>): Int64Value {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0n;\n        if (value !== undefined)\n            reflectionMergePartial<Int64Value>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Int64Value): Int64Value {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int64 value */ 1:\n                    message.value = reader.int64().toBigInt();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Int64Value, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int64 value = 1; */\n        if (message.value !== 0n)\n            writer.tag(1, WireType.Varint).int64(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.Int64Value\n */\nexport const Int64Value = new Int64Value$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass UInt64Value$Type extends MessageType<UInt64Value> {\n    constructor() {\n        super(\"google.protobuf.UInt64Value\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 4 /*ScalarType.UINT64*/, L: 0 /*LongType.BIGINT*/ }\n        ]);\n    }\n    /**\n     * Encode `UInt64Value` to JSON string.\n     */\n    internalJsonWrite(message: UInt64Value, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(ScalarType.UINT64, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `UInt64Value` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: UInt64Value): UInt64Value {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, ScalarType.UINT64, LongType.BIGINT, \"value\") as any;\n        return target;\n    }\n    create(value?: PartialMessage<UInt64Value>): UInt64Value {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0n;\n        if (value !== undefined)\n            reflectionMergePartial<UInt64Value>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UInt64Value): UInt64Value {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* uint64 value */ 1:\n                    message.value = reader.uint64().toBigInt();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: UInt64Value, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* uint64 value = 1; */\n        if (message.value !== 0n)\n            writer.tag(1, WireType.Varint).uint64(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.UInt64Value\n */\nexport const UInt64Value = new UInt64Value$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass Int32Value$Type extends MessageType<Int32Value> {\n    constructor() {\n        super(\"google.protobuf.Int32Value\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ }\n        ]);\n    }\n    /**\n     * Encode `Int32Value` to JSON string.\n     */\n    internalJsonWrite(message: Int32Value, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(5, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `Int32Value` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: Int32Value): Int32Value {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 5, undefined, \"value\") as number;\n        return target;\n    }\n    create(value?: PartialMessage<Int32Value>): Int32Value {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0;\n        if (value !== undefined)\n            reflectionMergePartial<Int32Value>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Int32Value): Int32Value {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int32 value */ 1:\n                    message.value = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Int32Value, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int32 value = 1; */\n        if (message.value !== 0)\n            writer.tag(1, WireType.Varint).int32(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.Int32Value\n */\nexport const Int32Value = new Int32Value$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass UInt32Value$Type extends MessageType<UInt32Value> {\n    constructor() {\n        super(\"google.protobuf.UInt32Value\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 13 /*ScalarType.UINT32*/ }\n        ]);\n    }\n    /**\n     * Encode `UInt32Value` to JSON string.\n     */\n    internalJsonWrite(message: UInt32Value, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(13, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `UInt32Value` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: UInt32Value): UInt32Value {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 13, undefined, \"value\") as number;\n        return target;\n    }\n    create(value?: PartialMessage<UInt32Value>): UInt32Value {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = 0;\n        if (value !== undefined)\n            reflectionMergePartial<UInt32Value>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UInt32Value): UInt32Value {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* uint32 value */ 1:\n                    message.value = reader.uint32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: UInt32Value, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* uint32 value = 1; */\n        if (message.value !== 0)\n            writer.tag(1, WireType.Varint).uint32(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.UInt32Value\n */\nexport const UInt32Value = new UInt32Value$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass BoolValue$Type extends MessageType<BoolValue> {\n    constructor() {\n        super(\"google.protobuf.BoolValue\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 8 /*ScalarType.BOOL*/ }\n        ]);\n    }\n    /**\n     * Encode `BoolValue` to JSON bool.\n     */\n    internalJsonWrite(message: BoolValue, options: JsonWriteOptions): JsonValue {\n        return message.value;\n    }\n    /**\n     * Decode `BoolValue` from JSON bool.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: BoolValue): BoolValue {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 8, undefined, \"value\") as boolean;\n        return target;\n    }\n    create(value?: PartialMessage<BoolValue>): BoolValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = false;\n        if (value !== undefined)\n            reflectionMergePartial<BoolValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BoolValue): BoolValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* bool value */ 1:\n                    message.value = reader.bool();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: BoolValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* bool value = 1; */\n        if (message.value !== false)\n            writer.tag(1, WireType.Varint).bool(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.BoolValue\n */\nexport const BoolValue = new BoolValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass StringValue$Type extends MessageType<StringValue> {\n    constructor() {\n        super(\"google.protobuf.StringValue\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 9 /*ScalarType.STRING*/ }\n        ]);\n    }\n    /**\n     * Encode `StringValue` to JSON string.\n     */\n    internalJsonWrite(message: StringValue, options: JsonWriteOptions): JsonValue {\n        return message.value;\n    }\n    /**\n     * Decode `StringValue` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: StringValue): StringValue {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 9, undefined, \"value\") as string;\n        return target;\n    }\n    create(value?: PartialMessage<StringValue>): StringValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = \"\";\n        if (value !== undefined)\n            reflectionMergePartial<StringValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StringValue): StringValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* string value */ 1:\n                    message.value = reader.string();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: StringValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* string value = 1; */\n        if (message.value !== \"\")\n            writer.tag(1, WireType.LengthDelimited).string(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.StringValue\n */\nexport const StringValue = new StringValue$Type();\n// @generated message type with reflection information, may provide speed optimized methods\nclass BytesValue$Type extends MessageType<BytesValue> {\n    constructor() {\n        super(\"google.protobuf.BytesValue\", [\n            { no: 1, name: \"value\", kind: \"scalar\", T: 12 /*ScalarType.BYTES*/ }\n        ]);\n    }\n    /**\n     * Encode `BytesValue` to JSON string.\n     */\n    internalJsonWrite(message: BytesValue, options: JsonWriteOptions): JsonValue {\n        return this.refJsonWriter.scalar(12, message.value, \"value\", false, true);\n    }\n    /**\n     * Decode `BytesValue` from JSON string.\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: BytesValue): BytesValue {\n        if (!target)\n            target = this.create();\n        target.value = this.refJsonReader.scalar(json, 12, undefined, \"value\") as Uint8Array;\n        return target;\n    }\n    create(value?: PartialMessage<BytesValue>): BytesValue {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.value = new Uint8Array(0);\n        if (value !== undefined)\n            reflectionMergePartial<BytesValue>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: BytesValue): BytesValue {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* bytes value */ 1:\n                    message.value = reader.bytes();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: BytesValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* bytes value = 1; */\n        if (message.value.length)\n            writer.tag(1, WireType.LengthDelimited).bytes(message.value);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.BytesValue\n */\nexport const BytesValue = new BytesValue$Type();\n","// @generated by protobuf-ts 2.11.1\n// @generated from protobuf file \"google/protobuf/duration.proto\" (package \"google.protobuf\", syntax proto3)\n// tslint:disable\n//\n// Protocol Buffers - Google's data interchange format\n// Copyright 2008 Google Inc.  All rights reserved.\n// https://developers.google.com/protocol-buffers/\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n//     * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n//     * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n//     * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\nimport type { BinaryWriteOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryWriter } from \"@protobuf-ts/runtime\";\nimport { WireType } from \"@protobuf-ts/runtime\";\nimport type { BinaryReadOptions } from \"@protobuf-ts/runtime\";\nimport type { IBinaryReader } from \"@protobuf-ts/runtime\";\nimport { UnknownFieldHandler } from \"@protobuf-ts/runtime\";\nimport type { PartialMessage } from \"@protobuf-ts/runtime\";\nimport { reflectionMergePartial } from \"@protobuf-ts/runtime\";\nimport { typeofJsonValue } from \"@protobuf-ts/runtime\";\nimport type { JsonValue } from \"@protobuf-ts/runtime\";\nimport type { JsonReadOptions } from \"@protobuf-ts/runtime\";\nimport type { JsonWriteOptions } from \"@protobuf-ts/runtime\";\nimport { PbLong } from \"@protobuf-ts/runtime\";\nimport { MessageType } from \"@protobuf-ts/runtime\";\n/**\n * A Duration represents a signed, fixed-length span of time represented\n * as a count of seconds and fractions of seconds at nanosecond\n * resolution. It is independent of any calendar and concepts like \"day\"\n * or \"month\". It is related to Timestamp in that the difference between\n * two Timestamp values is a Duration and it can be added or subtracted\n * from a Timestamp. Range is approximately +-10,000 years.\n *\n * # Examples\n *\n * Example 1: Compute Duration from two Timestamps in pseudo code.\n *\n *     Timestamp start = ...;\n *     Timestamp end = ...;\n *     Duration duration = ...;\n *\n *     duration.seconds = end.seconds - start.seconds;\n *     duration.nanos = end.nanos - start.nanos;\n *\n *     if (duration.seconds < 0 && duration.nanos > 0) {\n *       duration.seconds += 1;\n *       duration.nanos -= 1000000000;\n *     } else if (duration.seconds > 0 && duration.nanos < 0) {\n *       duration.seconds -= 1;\n *       duration.nanos += 1000000000;\n *     }\n *\n * Example 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n *\n *     Timestamp start = ...;\n *     Duration duration = ...;\n *     Timestamp end = ...;\n *\n *     end.seconds = start.seconds + duration.seconds;\n *     end.nanos = start.nanos + duration.nanos;\n *\n *     if (end.nanos < 0) {\n *       end.seconds -= 1;\n *       end.nanos += 1000000000;\n *     } else if (end.nanos >= 1000000000) {\n *       end.seconds += 1;\n *       end.nanos -= 1000000000;\n *     }\n *\n * Example 3: Compute Duration from datetime.timedelta in Python.\n *\n *     td = datetime.timedelta(days=3, minutes=10)\n *     duration = Duration()\n *     duration.FromTimedelta(td)\n *\n * # JSON Mapping\n *\n * In JSON format, the Duration type is encoded as a string rather than an\n * object, where the string ends in the suffix \"s\" (indicating seconds) and\n * is preceded by the number of seconds, with nanoseconds expressed as\n * fractional seconds. For example, 3 seconds with 0 nanoseconds should be\n * encoded in JSON format as \"3s\", while 3 seconds and 1 nanosecond should\n * be expressed in JSON format as \"3.000000001s\", and 3 seconds and 1\n * microsecond should be expressed in JSON format as \"3.000001s\".\n *\n *\n * @generated from protobuf message google.protobuf.Duration\n */\nexport interface Duration {\n    /**\n     * Signed seconds of the span of time. Must be from -315,576,000,000\n     * to +315,576,000,000 inclusive. Note: these bounds are computed from:\n     * 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years\n     *\n     * @generated from protobuf field: int64 seconds = 1\n     */\n    seconds: bigint;\n    /**\n     * Signed fractions of a second at nanosecond resolution of the span\n     * of time. Durations less than one second are represented with a 0\n     * `seconds` field and a positive or negative `nanos` field. For durations\n     * of one second or more, a non-zero value for the `nanos` field must be\n     * of the same sign as the `seconds` field. Must be from -999,999,999\n     * to +999,999,999 inclusive.\n     *\n     * @generated from protobuf field: int32 nanos = 2\n     */\n    nanos: number;\n}\n// @generated message type with reflection information, may provide speed optimized methods\nclass Duration$Type extends MessageType<Duration> {\n    constructor() {\n        super(\"google.protobuf.Duration\", [\n            { no: 1, name: \"seconds\", kind: \"scalar\", T: 3 /*ScalarType.INT64*/, L: 0 /*LongType.BIGINT*/ },\n            { no: 2, name: \"nanos\", kind: \"scalar\", T: 5 /*ScalarType.INT32*/ }\n        ]);\n    }\n    /**\n     * Encode `Duration` to JSON string like \"3.000001s\".\n     */\n    internalJsonWrite(message: Duration, options: JsonWriteOptions): JsonValue {\n        let s = PbLong.from(message.seconds).toNumber();\n        if (s > 315576000000 || s < -315576000000)\n            throw new Error(\"Duration value out of range.\");\n        let text = message.seconds.toString();\n        if (s === 0 && message.nanos < 0)\n            text = \"-\" + text;\n        if (message.nanos !== 0) {\n            let nanosStr = Math.abs(message.nanos).toString();\n            nanosStr = \"0\".repeat(9 - nanosStr.length) + nanosStr;\n            if (nanosStr.substring(3) === \"000000\")\n                nanosStr = nanosStr.substring(0, 3);\n            else if (nanosStr.substring(6) === \"000\")\n                nanosStr = nanosStr.substring(0, 6);\n            text += \".\" + nanosStr;\n        }\n        return text + \"s\";\n    }\n    /**\n     * Decode `Duration` from JSON string like \"3.000001s\"\n     */\n    internalJsonRead(json: JsonValue, options: JsonReadOptions, target?: Duration): Duration {\n        if (typeof json !== \"string\")\n            throw new Error(\"Unable to parse Duration from JSON \" + typeofJsonValue(json) + \". Expected string.\");\n        let match = json.match(/^(-?)([0-9]+)(?:\\.([0-9]+))?s/);\n        if (match === null)\n            throw new Error(\"Unable to parse Duration from JSON string. Invalid format.\");\n        if (!target)\n            target = this.create();\n        let [, sign, secs, nanos] = match;\n        let longSeconds = PbLong.from(sign + secs);\n        if (longSeconds.toNumber() > 315576000000 || longSeconds.toNumber() < -315576000000)\n            throw new Error(\"Unable to parse Duration from JSON string. Value out of range.\");\n        target.seconds = longSeconds.toBigInt();\n        if (typeof nanos == \"string\") {\n            let nanosStr = sign + nanos + \"0\".repeat(9 - nanos.length);\n            target.nanos = parseInt(nanosStr);\n        }\n        return target;\n    }\n    create(value?: PartialMessage<Duration>): Duration {\n        const message = globalThis.Object.create((this.messagePrototype!));\n        message.seconds = 0n;\n        message.nanos = 0;\n        if (value !== undefined)\n            reflectionMergePartial<Duration>(this, message, value);\n        return message;\n    }\n    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Duration): Duration {\n        let message = target ?? this.create(), end = reader.pos + length;\n        while (reader.pos < end) {\n            let [fieldNo, wireType] = reader.tag();\n            switch (fieldNo) {\n                case /* int64 seconds */ 1:\n                    message.seconds = reader.int64().toBigInt();\n                    break;\n                case /* int32 nanos */ 2:\n                    message.nanos = reader.int32();\n                    break;\n                default:\n                    let u = options.readUnknownField;\n                    if (u === \"throw\")\n                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);\n                    let d = reader.skip(wireType);\n                    if (u !== false)\n                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);\n            }\n        }\n        return message;\n    }\n    internalBinaryWrite(message: Duration, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {\n        /* int64 seconds = 1; */\n        if (message.seconds !== 0n)\n            writer.tag(1, WireType.Varint).int64(message.seconds);\n        /* int32 nanos = 2; */\n        if (message.nanos !== 0)\n            writer.tag(2, WireType.Varint).int32(message.nanos);\n        let u = options.writeUnknownFields;\n        if (u !== false)\n            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);\n        return writer;\n    }\n}\n/**\n * @generated MessageType for protobuf message google.protobuf.Duration\n */\nexport const Duration = new Duration$Type();\n"],"mappings":";AAKA,SAAS,YAAAA,iBAAgB;AAGzB,SAAS,uBAAAC,4BAA2B;AAEpC,SAAS,0BAAAC,+BAA8B;AACvC,SAAS,eAAAC,oBAAmB;;;ACwC5B,SAAS,kBAAkB;AAC3B,SAAS,gBAAgB;AAGzB,SAAS,gBAAgB;AAGzB,SAAS,2BAA2B;AAEpC,SAAS,8BAA8B;AAIvC,SAAS,mBAAmB;AAoK5B,IAAM,mBAAN,cAA+B,YAAyB;AAAA,EACpD,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACvE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAsB,SAAsC;AAC1E,WAAO,KAAK,cAAc,OAAO,GAAG,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC3E;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAmC;AAC3F,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,GAAG,QAAW,OAAO;AACpE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,KAAK,EAAE,OAAO,QAAQ,KAAK;AACtD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,kBAAN,cAA8B,YAAwB;AAAA,EAClD,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAqB,SAAsC;AACzE,WAAO,KAAK,cAAc,OAAO,GAAG,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC3E;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAiC;AACzF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,GAAG,QAAW,OAAO;AACpE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,KAAK,EAAE,MAAM,QAAQ,KAAK;AACrD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,kBAAN,cAA8B,YAAwB;AAAA,EAClD,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA,QAAwB,GAAG;AAAA;AAAA,MAAsB;AAAA,IAChG,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAqB,SAAsC;AACzE,WAAO,KAAK,cAAc,OAAO,WAAW,OAAO,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC1F;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAiC;AACzF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,WAAW,OAAO,SAAS,QAAQ,OAAO;AACzF,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM,EAAE,SAAS;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,MAAM,EAAE,MAAM,QAAQ,KAAK;AACtD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,mBAAN,cAA+B,YAAyB;AAAA,EACpD,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,IACjG,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAsB,SAAsC;AAC1E,WAAO,KAAK,cAAc,OAAO,WAAW,QAAQ,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC3F;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAmC;AAC3F,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,WAAW,QAAQ,SAAS,QAAQ,OAAO;AAC1F,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO,EAAE,SAAS;AACzC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,MAAM,EAAE,OAAO,QAAQ,KAAK;AACvD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,kBAAN,cAA8B,YAAwB;AAAA,EAClD,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAqB,SAAsC;AACzE,WAAO,KAAK,cAAc,OAAO,GAAG,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC3E;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAiC;AACzF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,GAAG,QAAW,OAAO;AACpE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,MAAM,EAAE,MAAM,QAAQ,KAAK;AACtD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,mBAAN,cAA+B,YAAyB;AAAA,EACpD,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,IACxE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAsB,SAAsC;AAC1E,WAAO,KAAK,cAAc,OAAO,IAAI,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC5E;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAmC;AAC3F,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,IAAI,QAAW,OAAO;AACrE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,MAAM,EAAE,OAAO,QAAQ,KAAK;AACvD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,iBAAN,cAA6B,YAAuB;AAAA,EAChD,cAAc;AACV,UAAM,6BAA6B;AAAA,MAC/B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,IACrE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAoB,SAAsC;AACxE,WAAO,QAAQ;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAA+B;AACvF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,GAAG,QAAW,OAAO;AACpE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAA8C;AACjD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAkC,MAAM,SAAS,KAAK;AAC1D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA+B;AACjH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAsB;AAClB,kBAAQ,QAAQ,OAAO,KAAK;AAC5B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAoB,QAAuB,SAA4C;AAEvG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,MAAM,EAAE,KAAK,QAAQ,KAAK;AACrD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,YAAY,IAAI,eAAe;AAE5C,IAAM,mBAAN,cAA+B,YAAyB;AAAA,EACpD,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACvE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAsB,SAAsC;AAC1E,WAAO,QAAQ;AAAA,EACnB;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAmC;AAC3F,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,GAAG,QAAW,OAAO;AACpE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,6BAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAG,SAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAChE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,kBAAN,cAA8B,YAAwB;AAAA,EAClD,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACvE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAqB,SAAsC;AACzE,WAAO,KAAK,cAAc,OAAO,IAAI,QAAQ,OAAO,SAAS,OAAO,IAAI;AAAA,EAC5E;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAAiC;AACzF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,WAAO,QAAQ,KAAK,cAAc,OAAO,MAAM,IAAI,QAAW,OAAO;AACrE,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ,IAAI,WAAW,CAAC;AAChC,QAAI,UAAU;AACV,6BAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAO,oBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,MAAM;AACd,aAAO,IAAI,GAAG,SAAS,eAAe,EAAE,MAAM,QAAQ,KAAK;AAC/D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAO,oBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;;;AC5uB9C,SAAS,YAAAC,iBAAgB;AAGzB,SAAS,uBAAAC,4BAA2B;AAEpC,SAAS,0BAAAC,+BAA8B;AACvC,SAAS,uBAAuB;AAIhC,SAAS,cAAc;AACvB,SAAS,eAAAC,oBAAmB;AAsF5B,IAAM,gBAAN,cAA4BA,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,4BAA4B;AAAA,MAC9B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA,QAAwB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA;AAAA;AAAA;AAAA,EAIA,kBAAkB,SAAmB,SAAsC;AACvE,QAAI,IAAI,OAAO,KAAK,QAAQ,OAAO,EAAE,SAAS;AAC9C,QAAI,IAAI,YAAgB,IAAI;AACxB,YAAM,IAAI,MAAM,8BAA8B;AAClD,QAAI,OAAO,QAAQ,QAAQ,SAAS;AACpC,QAAI,MAAM,KAAK,QAAQ,QAAQ;AAC3B,aAAO,MAAM;AACjB,QAAI,QAAQ,UAAU,GAAG;AACrB,UAAI,WAAW,KAAK,IAAI,QAAQ,KAAK,EAAE,SAAS;AAChD,iBAAW,IAAI,OAAO,IAAI,SAAS,MAAM,IAAI;AAC7C,UAAI,SAAS,UAAU,CAAC,MAAM;AAC1B,mBAAW,SAAS,UAAU,GAAG,CAAC;AAAA,eAC7B,SAAS,UAAU,CAAC,MAAM;AAC/B,mBAAW,SAAS,UAAU,GAAG,CAAC;AACtC,cAAQ,MAAM;AAAA,IAClB;AACA,WAAO,OAAO;AAAA,EAClB;AAAA;AAAA;AAAA;AAAA,EAIA,iBAAiB,MAAiB,SAA0B,QAA6B;AACrF,QAAI,OAAO,SAAS;AAChB,YAAM,IAAI,MAAM,wCAAwC,gBAAgB,IAAI,IAAI,oBAAoB;AACxG,QAAI,QAAQ,KAAK,MAAM,+BAA+B;AACtD,QAAI,UAAU;AACV,YAAM,IAAI,MAAM,4DAA4D;AAChF,QAAI,CAAC;AACD,eAAS,KAAK,OAAO;AACzB,QAAI,CAAC,EAAE,MAAM,MAAM,KAAK,IAAI;AAC5B,QAAI,cAAc,OAAO,KAAK,OAAO,IAAI;AACzC,QAAI,YAAY,SAAS,IAAI,YAAgB,YAAY,SAAS,IAAI;AAClE,YAAM,IAAI,MAAM,gEAAgE;AACpF,WAAO,UAAU,YAAY,SAAS;AACtC,QAAI,OAAO,SAAS,UAAU;AAC1B,UAAI,WAAW,OAAO,QAAQ,IAAI,OAAO,IAAI,MAAM,MAAM;AACzD,aAAO,QAAQ,SAAS,QAAQ;AAAA,IACpC;AACA,WAAO;AAAA,EACX;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,UAAU;AAClB,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAD,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAyB;AACrB,kBAAQ,UAAU,OAAO,MAAM,EAAE,SAAS;AAC1C;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOD,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGD,UAAS,MAAM,EAAE,MAAM,QAAQ,OAAO;AAExD,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,KAAK;AACtD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOC,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;;;AF0BnC,IAAK,0BAAL,kBAAKG,6BAAL;AAIH,EAAAA,kDAAA,UAAO,KAAP;AAIA,EAAAA,kDAAA,UAAO,KAAP;AAIA,EAAAA,kDAAA,cAAW,KAAX;AAZQ,SAAAA;AAAA,GAAA;AAw5CL,IAAK,wBAAL,kBAAKC,2BAAL;AAIH,EAAAA,8CAAA,UAAO,KAAP;AAIA,EAAAA,8CAAA,YAAS,KAAT;AAIA,EAAAA,8CAAA,mBAAgB,KAAhB;AAIA,EAAAA,8CAAA,kBAAe,KAAf;AAIA,EAAAA,8CAAA,kBAAe,KAAf;AAIA,EAAAA,8CAAA,WAAQ,KAAR;AAIA,EAAAA,8CAAA,eAAY,KAAZ;AAIA,EAAAA,8CAAA,YAAS,KAAT;AAIA,EAAAA,8CAAA,aAAU,KAAV;AAIA,EAAAA,8CAAA,wBAAqB,KAArB;AAIA,EAAAA,8CAAA,+BAA4B,MAA5B;AAIA,EAAAA,8CAAA,8BAA2B,MAA3B;AAIA,EAAAA,8CAAA,uBAAoB,MAApB;AAIA,EAAAA,8CAAA,2BAAwB,MAAxB;AAIA,EAAAA,8CAAA,wBAAqB,MAArB;AA5DQ,SAAAA;AAAA,GAAA;AAmoBL,IAAK,0BAAL,kBAAKC,6BAAL;AAIH,EAAAA,kDAAA,UAAO,KAAP;AAIA,EAAAA,kDAAA,gBAAa,KAAb;AARQ,SAAAA;AAAA,GAAA;AAaL,IAAK,SAAL,kBAAKC,YAAL;AAIH,EAAAA,gBAAA,SAAM,KAAN;AAIA,EAAAA,gBAAA,UAAO,KAAP;AAIA,EAAAA,gBAAA,SAAM,KAAN;AAIA,EAAAA,gBAAA,YAAS,KAAT;AAhBQ,SAAAA;AAAA,GAAA;AAqBL,IAAK,mBAAL,kBAAKC,sBAAL;AAIH,EAAAA,oCAAA,YAAS,KAAT;AAIA,EAAAA,oCAAA,aAAU,KAAV;AAKA,EAAAA,oCAAA,SAAM,KAAN;AAIA,EAAAA,oCAAA,YAAS,KAAT;AAKA,EAAAA,oCAAA,WAAQ,KAAR;AAKA,EAAAA,oCAAA,aAAU,KAAV;AAOA,EAAAA,oCAAA,cAAW,KAAX;AAMA,EAAAA,oCAAA,UAAO,KAAP;AAMA,EAAAA,oCAAA,YAAS,KAAT;AAIA,EAAAA,oCAAA,UAAO,KAAP;AAIA,EAAAA,oCAAA,UAAO,MAAP;AAIA,EAAAA,oCAAA,eAAY,MAAZ;AAIA,EAAAA,oCAAA,iBAAc,MAAd;AAIA,EAAAA,oCAAA,WAAQ,MAAR;AAMA,EAAAA,oCAAA,WAAQ,MAAR;AAIA,EAAAA,oCAAA,UAAO,MAAP;AAIA,EAAAA,oCAAA,iBAAc,MAAd;AAIA,EAAAA,oCAAA,uBAAoB,MAApB;AAIA,EAAAA,oCAAA,aAAU,MAAV;AAIA,EAAAA,oCAAA,mBAAgB,MAAhB;AA5FQ,SAAAA;AAAA,GAAA;AAiGL,IAAK,UAAL,kBAAKC,aAAL;AAMH,EAAAA,kBAAA,WAAQ,KAAR;AAIA,EAAAA,kBAAA,UAAO,KAAP;AAIA,EAAAA,kBAAA,WAAQ,KAAR;AAIA,EAAAA,kBAAA,WAAQ,KAAR;AAIA,EAAAA,kBAAA,YAAS,KAAT;AAIA,EAAAA,kBAAA,YAAS,KAAT;AAIA,EAAAA,kBAAA,WAAQ,KAAR;AAIA,EAAAA,kBAAA,YAAS,KAAT;AAIA,EAAAA,kBAAA,YAAS,KAAT;AAIA,EAAAA,kBAAA,YAAS,KAAT;AAIA,EAAAA,kBAAA,aAAU,MAAV;AAIA,EAAAA,kBAAA,aAAU,MAAV;AAlDQ,SAAAA;AAAA,GAAA;AAuDL,IAAK,YAAL,kBAAKC,eAAL;AAIH,EAAAA,sBAAA,aAAU,KAAV;AAIA,EAAAA,sBAAA,aAAU,KAAV;AARQ,SAAAA;AAAA,GAAA;AAaL,IAAK,iBAAL,kBAAKC,oBAAL;AAIH,EAAAA,gCAAA,gBAAa,KAAb;AAIA,EAAAA,gCAAA,cAAW,KAAX;AAIA,EAAAA,gCAAA,cAAW,KAAX;AAIA,EAAAA,gCAAA,qBAAkB,KAAlB;AAhBQ,SAAAA;AAAA,GAAA;AAqBL,IAAK,YAAL,kBAAKC,eAAL;AAIH,EAAAA,sBAAA,mBAAgB,KAAhB;AAIA,EAAAA,sBAAA,wBAAqB,KAArB;AAIA,EAAAA,sBAAA,wBAAqB,KAArB;AAZQ,SAAAA;AAAA,GAAA;AAeZ,IAAM,yBAAN,cAAqCC,aAA+B;AAAA,EAChE,cAAc;AACV,UAAM,iCAAiC;AAAA,MACnC,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,MAAM,EAAE;AAAA,MACzG,EAAE,IAAI,GAAG,MAAM,iBAAiB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,YAAY,EAAE;AAAA,MACtH,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,MAAM,EAAE;AAAA,MACzG,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,SAAS,EAAE;AAAA,MAChH,EAAE,IAAI,GAAG,MAAM,iCAAiC,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,wBAAwB,EAAE;AAAA,MAClJ,EAAE,IAAI,GAAG,MAAM,iCAAiC,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,wBAAwB,EAAE;AAAA,MAClJ,EAAE,IAAI,GAAG,MAAM,sBAAsB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,gBAAgB,EAAE;AAAA,MAC/H,EAAE,IAAI,IAAI,MAAM,sBAAsB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,gBAAgB,EAAE;AAAA,MAChI,EAAE,IAAI,IAAI,MAAM,yBAAyB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,oBAAoB,EAAE;AAAA,MACvI,EAAE,IAAI,IAAI,MAAM,iBAAiB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,YAAY,EAAE;AAAA,MACvH,EAAE,IAAI,IAAI,MAAM,YAAY,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,OAAO,EAAE;AAAA,MAC7G;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAiB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC5E;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC/E,EAAE,IAAI,IAAI,MAAM,sBAAsB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,iBAAiB,EAAE;AAAA,MACjI,EAAE,IAAI,IAAI,MAAM,SAAS,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,KAAK,EAAE;AAAA,MACxG,EAAE,IAAI,IAAI,MAAM,aAAa,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,SAAS,EAAE;AAAA,MAChH,EAAE,IAAI,IAAI,MAAM,uBAAuB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,gBAAgB,EAAE;AAAA,MACjI,EAAE,IAAI,IAAI,MAAM,qBAAqB,MAAM,OAAO,GAAG,GAAyB,GAAG,EAAE,MAAM,WAAW,GAAG,MAAM,eAAe,EAAE;AAAA,IAClI,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA8D;AACjE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,SAAS,CAAC;AAClB,YAAQ,eAAe,CAAC;AACxB,YAAQ,SAAS,CAAC;AAClB,YAAQ,YAAY,CAAC;AACrB,YAAQ,4BAA4B,CAAC;AACrC,YAAQ,4BAA4B,CAAC;AACrC,YAAQ,oBAAoB,CAAC;AAC7B,YAAQ,mBAAmB,CAAC;AAC5B,YAAQ,uBAAuB,CAAC;AAChC,YAAQ,eAAe,CAAC;AACxB,YAAQ,UAAU,CAAC;AACnB,YAAQ,eAAe;AACvB,YAAQ,kBAAkB;AAC1B,YAAQ,oBAAoB,CAAC;AAC7B,YAAQ,QAAQ,CAAC;AACjB,YAAQ,YAAY,CAAC;AACrB,YAAQ,oBAAoB,CAAC;AAC7B,YAAQ,mBAAmB,CAAC;AAC5B,QAAI,UAAU;AACV,MAAAC,wBAA0C,MAAM,SAAS,KAAK;AAClE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA+C;AACjI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAiD;AAC7C,eAAK,eAAe,QAAQ,QAAQ,QAAQ,OAAO;AACnD;AAAA,QACJ;AAAA,QAA8D;AAC1D,eAAK,eAAe,QAAQ,cAAc,QAAQ,OAAO;AACzD;AAAA,QACJ;AAAA,QAAiD;AAC7C,eAAK,eAAe,QAAQ,QAAQ,QAAQ,OAAO;AACnD;AAAA,QACJ;AAAA,QAAwD;AACpD,eAAK,eAAe,QAAQ,WAAW,QAAQ,OAAO;AACtD;AAAA,QACJ;AAAA,QAA0F;AACtF,eAAK,eAAe,QAAQ,2BAA2B,QAAQ,OAAO;AACtE;AAAA,QACJ;AAAA,QAA0F;AACtF,eAAK,eAAe,QAAQ,2BAA2B,QAAQ,OAAO;AACtE;AAAA,QACJ;AAAA,QAAuE;AACnE,eAAK,eAAe,QAAQ,mBAAmB,QAAQ,OAAO;AAC9D;AAAA,QACJ;AAAA,QAAuE;AACnE,eAAK,gBAAgB,QAAQ,kBAAkB,QAAQ,OAAO;AAC9D;AAAA,QACJ;AAAA,QAA8E;AAC1E,eAAK,gBAAgB,QAAQ,sBAAsB,QAAQ,OAAO;AAClE;AAAA,QACJ;AAAA,QAA8D;AAC1D,eAAK,gBAAgB,QAAQ,cAAc,QAAQ,OAAO;AAC1D;AAAA,QACJ;AAAA,QAAoD;AAChD,eAAK,gBAAgB,QAAQ,SAAS,QAAQ,OAAO;AACrD;AAAA,QACJ;AAAA,QAAgC;AAC5B,kBAAQ,eAAe,OAAO,OAAO;AACrC;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AAAA,QAAwE;AACpE,eAAK,gBAAgB,QAAQ,mBAAmB,QAAQ,OAAO;AAC/D;AAAA,QACJ;AAAA,QAA+C;AAC3C,eAAK,gBAAgB,QAAQ,OAAO,QAAQ,OAAO;AACnD;AAAA,QACJ;AAAA,QAAuD;AACnD,eAAK,gBAAgB,QAAQ,WAAW,QAAQ,OAAO;AACvD;AAAA,QACJ;AAAA,QAAwE;AACpE,eAAK,gBAAgB,QAAQ,mBAAmB,QAAQ,OAAO;AAC/D;AAAA,QACJ;AAAA,QAAqE;AACjE,eAAK,gBAAgB,QAAQ,kBAAkB,QAAQ,OAAO;AAC9D;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACQ,eAAe,KAAkC,QAAuB,SAAkC;AAC9G,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAoD;AACvG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,MAAM,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAC/D;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,kEAAkE;AAAA,MAC1G;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,MAAM,OAAO;AAAA,EACzC;AAAA,EACQ,eAAe,KAAwC,QAAuB,SAAkC;AACpH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA0D;AAC7G,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACrE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,yEAAyE;AAAA,MACjH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,YAAY,OAAO;AAAA,EAC/C;AAAA,EACQ,eAAe,KAAkC,QAAuB,SAAkC;AAC9G,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAoD;AACvG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,MAAM,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAC/D;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,kEAAkE;AAAA,MAC1G;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,MAAM,OAAO;AAAA,EACzC;AAAA,EACQ,eAAe,KAAqC,QAAuB,SAAkC;AACjH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAuD;AAC1G,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAClE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,sEAAsE;AAAA,MAC9G;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,SAAS,OAAO;AAAA,EAC5C;AAAA,EACQ,eAAe,KAAqD,QAAuB,SAAkC;AACjI,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAuE;AAC1H,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACjF;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,yFAAyF;AAAA,MACjI;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,wBAAwB,OAAO;AAAA,EAC3D;AAAA,EACQ,eAAe,KAAqD,QAAuB,SAAkC;AACjI,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAuE;AAC1H,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACjF;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,yFAAyF;AAAA,MACjI;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,wBAAwB,OAAO;AAAA,EAC3D;AAAA,EACQ,eAAe,KAA6C,QAAuB,SAAkC;AACzH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA+D;AAClH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,gBAAgB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACzE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,8EAA8E;AAAA,MACtH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,gBAAgB,OAAO;AAAA,EACnD;AAAA,EACQ,gBAAgB,KAA4C,QAAuB,SAAkC;AACzH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA8D;AACjH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,gBAAgB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACzE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,8EAA8E;AAAA,MACtH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,gBAAgB,OAAO;AAAA,EACnD;AAAA,EACQ,gBAAgB,KAAgD,QAAuB,SAAkC;AAC7H,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAkE;AACrH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,oBAAoB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAC7E;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,iFAAiF;AAAA,MACzH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,oBAAoB,OAAO;AAAA,EACvD;AAAA,EACQ,gBAAgB,KAAwC,QAAuB,SAAkC;AACrH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA0D;AAC7G,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACrE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,yEAAyE;AAAA,MACjH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,YAAY,OAAO;AAAA,EAC/C;AAAA,EACQ,gBAAgB,KAAmC,QAAuB,SAAkC;AAChH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAqD;AACxG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAChE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,oEAAoE;AAAA,MAC5G;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,OAAO,OAAO;AAAA,EAC1C;AAAA,EACQ,gBAAgB,KAA6C,QAAuB,SAAkC;AAC1H,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA+D;AAClH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,iBAAiB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAC1E;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,8EAA8E;AAAA,MACtH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,iBAAiB,OAAO;AAAA,EACpD;AAAA,EACQ,gBAAgB,KAAiC,QAAuB,SAAkC;AAC9G,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAmD;AACtG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,KAAK,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAC9D;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,iEAAiE;AAAA,MACzG;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,KAAK,OAAO;AAAA,EACxC;AAAA,EACQ,gBAAgB,KAAqC,QAAuB,SAAkC;AAClH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAuD;AAC1G,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AAClE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,qEAAqE;AAAA,MAC7G;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,SAAS,OAAO;AAAA,EAC5C;AAAA,EACQ,gBAAgB,KAA6C,QAAuB,SAAkC;AAC1H,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA+D;AAClH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,gBAAgB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACzE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,+EAA+E;AAAA,MACvH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,gBAAgB,OAAO;AAAA,EACnD;AAAA,EACQ,gBAAgB,KAA4C,QAAuB,SAAkC;AACzH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA8D;AACjH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO;AACxE;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,6EAA6E;AAAA,MACrH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO,eAAe,OAAO;AAAA,EAClD;AAAA,EACA,oBAAoB,SAA4B,QAAuB,SAA4C;AAE/G,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,MAAM,GAAG;AAClD,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,YAAM,oBAAoB,QAAQ,OAAO,CAAC,GAAG,QAAQ,OAAO;AAC5D,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,YAAY,GAAG;AACxD,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,kBAAY,oBAAoB,QAAQ,aAAa,CAAC,GAAG,QAAQ,OAAO;AACxE,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,MAAM,GAAG;AAClD,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,YAAM,oBAAoB,QAAQ,OAAO,CAAC,GAAG,QAAQ,OAAO;AAC5D,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,GAAG;AACrD,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,eAAS,oBAAoB,QAAQ,UAAU,CAAC,GAAG,QAAQ,OAAO;AAClE,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,yBAAyB,GAAG;AACrE,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,8BAAwB,oBAAoB,QAAQ,0BAA0B,CAAC,GAAG,QAAQ,OAAO;AACjG,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,yBAAyB,GAAG;AACrE,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,8BAAwB,oBAAoB,QAAQ,0BAA0B,CAAC,GAAG,QAAQ,OAAO;AACjG,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,iBAAiB,GAAG;AAC7D,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACxF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,sBAAgB,oBAAoB,QAAQ,kBAAkB,CAAC,GAAG,QAAQ,OAAO;AACjF,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,gBAAgB,GAAG;AAC5D,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,sBAAgB,oBAAoB,QAAQ,iBAAiB,CAAC,GAAG,QAAQ,OAAO;AAChF,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,oBAAoB,GAAG;AAChE,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,0BAAoB,oBAAoB,QAAQ,qBAAqB,CAAC,GAAG,QAAQ,OAAO;AACxF,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,YAAY,GAAG;AACxD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,kBAAY,oBAAoB,QAAQ,aAAa,CAAC,GAAG,QAAQ,OAAO;AACxE,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,OAAO,GAAG;AACnD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,aAAO,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,QAAQ,OAAO;AAC9D,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAE3E,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,iBAAiB,GAAG;AAC7D,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,uBAAiB,oBAAoB,QAAQ,kBAAkB,CAAC,GAAG,QAAQ,OAAO;AAClF,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,KAAK,GAAG;AACjD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,WAAK,oBAAoB,QAAQ,MAAM,CAAC,GAAG,QAAQ,OAAO;AAC1D,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,SAAS,GAAG;AACrD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,eAAS,oBAAoB,QAAQ,UAAU,CAAC,GAAG,QAAQ,OAAO;AAClE,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,QAAI,QAAQ,iBAAiB;AACzB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY;AAExE,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,iBAAiB,GAAG;AAC7D,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,sBAAgB,oBAAoB,QAAQ,kBAAkB,CAAC,GAAG,QAAQ,OAAO;AACjF,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AAEA,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,gBAAgB,GAAG;AAC5D,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC;AACzF,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK;AAC7C,qBAAe,oBAAoB,QAAQ,iBAAiB,CAAC,GAAG,QAAQ,OAAO;AAC/E,aAAO,KAAK,EAAE,KAAK;AAAA,IACvB;AACA,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,oBAAoB,IAAI,uBAAuB;AAE5D,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAC/D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,gBAAN,cAA4BF,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,wBAAwB;AAAA,MAC1B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,GAAG,MAAM,eAAe;AAAA,IACtE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,cAAc;AACtB,QAAI,UAAU;AACV,MAAAC,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA8B;AAC1B,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,SAAS,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,MAAM;AACnG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ;AACR,qBAAe,oBAAoB,QAAQ,QAAQ,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACrH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;AAE1C,IAAM,aAAN,cAAyBF,aAAmB;AAAA,EACxC,cAAc;AACV,UAAM,qBAAqB;AAAA,MACvB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MACtE,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MAC9F,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAuB;AAAA,MACvF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAuB;AAAA,MACzF,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC9D,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,QAAQ,GAAG,MAAM,CAAC,yBAAyB,SAAS,EAAE;AAAA,MACzF,EAAE,IAAI,IAAI,MAAM,mBAAmB,MAAM,WAAW,GAAG,MAAM,eAAe;AAAA,IAChF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsC;AACzC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,UAAU,CAAC;AACnB,YAAQ,YAAY;AACpB,QAAI,UAAU;AACV,MAAAC,wBAA8B,MAAM,SAAS,KAAK;AACtD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuB;AACzG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAqD;AACjD,kBAAQ,kBAAkB,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AAC/G;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,QAAQ,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAChF;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AAAA,QAA0C;AACtC,kBAAQ,iBAAiB,OAAO,MAAM;AACtC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,MAAM;AACvC;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AAAA,QAA+D;AAC3D,kBAAQ,iBAAiB,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,cAAc;AACnH;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgB,QAAuB,SAA4C;AAEnG,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExH,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,aAAO,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElI,QAAI,QAAQ,mBAAmB;AAC3B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,cAAc;AAE/D,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,eAAe;AAEhE,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAE1D,QAAI,QAAQ;AACR,qBAAe,oBAAoB,QAAQ,gBAAgB,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC9H,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,QAAQ,IAAI,WAAW;AAEpC,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,QAAQ,GAAG,MAAM,CAAC,uCAAuC,uBAAuB,EAAE;AAAA,MACnH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAuB;AAAA,MAC1F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzF,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,OAAO,aAAa,GAAG,MAAM,eAAe;AAAA,IACnG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,WAAW;AACnB,YAAQ,YAAY,EAAE,WAAW,OAAU;AAC3C,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwD;AACpD,kBAAQ,WAAW,OAAO,MAAM;AAChC;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,UAAU,OAAO,MAAM;AAAA,UAC3B;AACA;AAAA,QACJ;AAAA,QAA0B;AACtB,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,SAAS,OAAO,OAAO;AAAA,UAC3B;AACA;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,gBAAgB,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,UAAkB,cAAc;AAAA,UACjI;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,QAAQ;AAEzD,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,UAAU,QAAQ;AAEnE,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,OAAO;AAE5E,QAAI,QAAQ,UAAU,cAAc;AAChC,qBAAe,oBAAoB,QAAQ,UAAU,gBAAgB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACvI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IACxE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,UAAU;AAClB,YAAQ,UAAU;AAClB,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA0B;AACtB,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,UAAU,OAAO,MAAM;AAC/B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,OAAO;AACxD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,mBAAN,cAA+BF,aAAyB;AAAA,EACpD,cAAc;AACV,UAAM,2BAA2B;AAAA,MAC7B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,OAAO,WAAW,GAAG,MAAM,eAAe;AAAA,MACrF,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,OAAO,WAAW,GAAG,MAAM,cAAc;AAAA,MACnF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,QAAQ,GAAG,MAAM,CAAC,sBAAsB,MAAM,EAAE;AAAA,MAC/E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,MAChF,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC9D,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,MACvH,EAAE,IAAI,IAAI,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,IAC3H,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,UAAU,EAAE,WAAW,OAAU;AACzC,YAAQ,OAAO;AACf,YAAQ,SAAS;AACjB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,eAAe,CAAC;AACxB,QAAI,UAAU;AACV,MAAAC,wBAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA8C;AAC1C,kBAAQ,UAAU;AAAA,YACd,WAAW;AAAA,YACX,SAAS,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,QAAgB,OAAO;AAAA,UACjH;AACA;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,UAAU;AAAA,YACd,WAAW;AAAA,YACX,QAAQ,cAAc,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,QAAgB,MAAM;AAAA,UAC9G;AACA;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,SAAS,OAAO,MAAM;AAC9B;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAAwE;AACpE,kBAAQ,cAAc,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACvG;AAAA,QACJ;AAAA,QAAuE;AACnE,kBAAQ,aAAa,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,QAAQ,cAAc;AAC9B,qBAAe,oBAAoB,QAAQ,QAAQ,SAAS,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE9H,QAAI,QAAQ,QAAQ,cAAc;AAC9B,oBAAc,oBAAoB,QAAQ,QAAQ,QAAQ,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE5H,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,MAAM;AAEvD,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElI,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,8BAAwB,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,aAAS,IAAI,GAAG,IAAI,QAAQ,aAAa,QAAQ;AAC7C,8BAAwB,oBAAoB,QAAQ,aAAa,CAAC,GAAG,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACxI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1E,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,QAAQ,KAAK,MAAM,GAAG,MAAM,CAAC,uCAAuC,uBAAuB,EAAE;AAAA,MAC5H;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC9F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,cAAc;AACtB,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA+B;AAC3B,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAuF;AACnF,kBAAQ,SAAS,OAAO,MAAM;AAC9B;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,MAAM;AAEvD,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,qBAAN,cAAiCF,aAA2B;AAAA,EACxD,cAAc;AACV,UAAM,6BAA6B;AAAA,MAC/B,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,sBAAsB;AAAA,MAClH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAiB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC/E,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsD;AACzD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,cAAc,CAAC;AACvB,YAAQ,eAAe;AACvB,QAAI,UAAU;AACV,MAAAC,wBAAsC,MAAM,SAAS,KAAK;AAC9D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuC;AACzH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAmE;AAC/D,kBAAQ,YAAY,KAAK,sBAAsB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACnG;AAAA,QACJ;AAAA,QAAgC;AAC5B,kBAAQ,eAAe,OAAO,OAAO;AACrC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAwB,QAAuB,SAA4C;AAE3G,aAAS,IAAI,GAAG,IAAI,QAAQ,YAAY,QAAQ;AAC5C,4BAAsB,oBAAoB,QAAQ,YAAY,CAAC,GAAG,OAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEpI,QAAI,QAAQ,iBAAiB;AACzB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY;AACvE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,gBAAgB,IAAI,mBAAmB;AAEpD,IAAM,6BAAN,cAAyCF,aAAmC;AAAA,EACxE,cAAc;AACV,UAAM,qCAAqC;AAAA,MACvC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,aAAa,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,MACjE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,IACxE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsE;AACzE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,QAAI,UAAU;AACV,MAAAC,wBAA8C,MAAM,SAAS,KAAK;AACtE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuD;AACzI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,WAAW,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACnG;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,WAAW,OAAO,KAAK;AAC/B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgC,QAAuB,SAA4C;AAEnH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEnH,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,QAAQ;AACxD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,wBAAwB,IAAI,2BAA2B;AAEpE,IAAM,aAAN,cAAyBF,aAAmB;AAAA,EACxC,cAAc;AACV,UAAM,qBAAqB;AAAA,MACvB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,MACvE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,GAAG,MAAM,YAAY;AAAA,MAC/D,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC9D,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,QAAQ,GAAG,MAAM,CAAC,yBAAyB,SAAS,EAAE;AAAA,MACzF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAsB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC5F,EAAE,IAAI,IAAI,MAAM,kBAAkB,MAAM,OAAO,GAAG,GAAyB,GAAG;AAAA,QAAE,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB,EAAE;AAAA,MAC7H;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtF,EAAE,IAAI,IAAI,MAAM,aAAa,MAAM,WAAW,GAAG,MAAM,QAAQ;AAAA,MAC/D,EAAE,IAAI,IAAI,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,WAAW;AAAA,MACnG;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAwB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC3F;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAA0B,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChG;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAuB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7F,EAAE,IAAI,IAAI,MAAM,eAAe,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,gBAAgB;AAAA,MAC5G,EAAE,IAAI,IAAI,MAAM,eAAe,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,MACpE,EAAE,IAAI,IAAI,MAAM,eAAe,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,gBAAgB;AAAA,IAChH,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsC;AACzC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,UAAU,CAAC;AACnB,YAAQ,UAAU,CAAC;AACnB,YAAQ,cAAc;AACtB,YAAQ,YAAY;AACpB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,UAAU,CAAC;AACnB,YAAQ,cAAc,CAAC;AACvB,YAAQ,cAAc,CAAC;AACvB,QAAI,UAAU;AACV,MAAAC,wBAA8B,MAAM,SAAS,KAAK;AACtD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuB;AACzG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,QAAQ,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAChF;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,QAAQ,KAAK,OAAO,OAAO,CAAC;AACpC;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AAAA,QAAoD;AAChD,kBAAQ,cAAc,OAAO,KAAK;AAClC;AAAA,QACJ;AAAA,QAA8C;AAC1C,kBAAQ,SAAS,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,MAAM;AAChG;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AAAA,QAA8C;AAC1C,kBAAQ,mBAAmB,OAAO,OAAO;AACzC;AAAA,QACJ;AAAA,QAA8C;AAC1C,eAAK,gBAAgB,QAAQ,eAAe,QAAQ,OAAO;AAC3D;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,WAAW,QAAQ,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AAChG;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,QAAQ,KAAK,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACpF;AAAA,QACJ;AAAA,QAAgD;AAC5C,kBAAQ,qBAAqB,OAAO,OAAO;AAC3C;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,uBAAuB,OAAO,OAAO;AAC7C;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,oBAAoB,OAAO,OAAO;AAC1C;AAAA,QACJ;AAAA,QAA4D;AACxD,kBAAQ,YAAY,KAAK,gBAAgB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAC7F;AAAA,QACJ;AAAA,QAAuD;AACnD,kBAAQ,aAAa,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,UAAU;AACvG;AAAA,QACJ;AAAA,QAA4D;AACxD,kBAAQ,YAAY,KAAK,gBAAgB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAC7F;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACQ,gBAAgB,KAA6B,QAAuB,SAAkC;AAC1G,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA+C;AAClG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,8DAA8D;AAAA,MACtG;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA,oBAAoB,SAAgB,QAAuB,SAA4C;AAEnG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,aAAO,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ,CAAC,CAAC;AAErE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElI,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,WAAW;AAE3D,QAAI,QAAQ;AACR,kBAAY,oBAAoB,QAAQ,QAAQ,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAE1D,QAAI,QAAQ,qBAAqB;AAC7B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,gBAAgB;AAE5E,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,aAAa;AACtD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,cAAc,CAAC,CAAC,EAAE,KAAK;AAEtK,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEvE,QAAI,QAAQ;AACR,cAAQ,oBAAoB,QAAQ,UAAU,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,iBAAW,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEtH,QAAI,QAAQ,uBAAuB;AAC/B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,kBAAkB;AAE9E,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAE3E,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEpE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEvE,QAAI,QAAQ,yBAAyB;AACjC,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,oBAAoB;AAEhF,QAAI,QAAQ,sBAAsB;AAC9B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,iBAAiB;AAE7E,aAAS,IAAI,GAAG,IAAI,QAAQ,YAAY,QAAQ;AAC5C,sBAAgB,oBAAoB,QAAQ,YAAY,CAAC,GAAG,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE/H,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,YAAY,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEtH,aAAS,IAAI,GAAG,IAAI,QAAQ,YAAY,QAAQ;AAC5C,sBAAgB,oBAAoB,QAAQ,YAAY,CAAC,GAAG,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC/H,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,QAAQ,IAAI,WAAW;AAEpC,IAAM,uBAAN,cAAmCF,aAA6B;AAAA,EAC5D,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0D;AAC7D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAAwC,MAAM,SAAS,KAAK;AAChE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2C;AAC7H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA0B,QAAuB,SAA4C;AAE7G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAC/D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,kBAAkB,IAAI,qBAAqB;AAExD,IAAM,uBAAN,cAAmCF,aAA6B;AAAA,EAC5D,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACxE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACjF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0D;AAC7D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,aAAa;AACrB,YAAQ,iBAAiB;AACzB,QAAI,UAAU;AACV,MAAAC,wBAAwC,MAAM,SAAS,KAAK;AAChE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2C;AAC7H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,iBAAiB,OAAO,OAAO;AACvC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA0B,QAAuB,SAA4C;AAE7G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AAErE,QAAI,QAAQ,mBAAmB;AAC3B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,cAAc;AACzE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,kBAAkB,IAAI,qBAAqB;AAExD,IAAM,eAAN,cAA2BF,aAAqB;AAAA,EAC5C,cAAc;AACV,UAAM,uBAAuB;AAAA,MACzB,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,cAAc;AAAA,MAC7E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,OAAO;AAAA,QAAK,GAAG;AAAA;AAAA,MAAwB;AAAA,IACxF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0C;AAC7C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,IAAI,EAAE,WAAW,OAAU;AACnC,QAAI,UAAU;AACV,MAAAC,wBAAgC,MAAM,SAAS,KAAK;AACxD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2B;AAC7G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA4C;AACxC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,QAAQ,cAAc,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,MAAM;AAAA,UACxG;AACA;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,YAAY,OAAO,OAAO;AAAA,UAC9B;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkB,QAAuB,SAA4C;AAErG,QAAI,QAAQ,EAAE,cAAc;AACxB,oBAAc,oBAAoB,QAAQ,EAAE,QAAQ,OAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEtH,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,EAAE,UAAU;AACvE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,UAAU,IAAI,aAAa;AAExC,IAAM,qBAAN,cAAiCF,aAA2B;AAAA,EACxD,cAAc;AACV,UAAM,6BAA6B;AAAA,MAC/B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC1G,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsD;AACzD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ,CAAC;AACjB,QAAI,UAAU;AACV,MAAAC,wBAAsC,MAAM,SAAS,KAAK;AAC9D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuC;AACzH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAiC;AAC7B,kBAAQ,MAAM,KAAK,OAAO,OAAO,CAAC;AAClC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAwB,QAAuB,SAA4C;AAE3G,aAAS,IAAI,GAAG,IAAI,QAAQ,MAAM,QAAQ;AACtC,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM,CAAC,CAAC;AACnE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,gBAAgB,IAAI,mBAAmB;AAEpD,IAAM,kBAAN,cAA8BF,aAAwB;AAAA,EAClD,cAAc;AACV,UAAM,0BAA0B;AAAA,MAC5B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACxE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1G;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,IACvG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,aAAa;AACrB,YAAQ,OAAO;AACf,YAAQ,YAAY,CAAC;AACrB,YAAQ,cAAc;AACtB,QAAI,UAAU;AACV,MAAAC,wBAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,UAAU,KAAK,OAAO,OAAO,CAAC;AACtC;AAAA,QACJ;AAAA,QAA8B;AAC1B,kBAAQ,cAAc,OAAO,OAAO,EAAE,SAAS;AAC/C;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AAErE,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,UAAU,QAAQ;AAC1C,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,CAAC,CAAC;AAEvE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,WAAW;AAC7D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,kBAAN,cAA8BF,aAAwB;AAAA,EAClD,cAAc;AACV,UAAM,0BAA0B;AAAA,MAC5B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACxG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACzF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,QAAI,UAAU;AACV,MAAAC,wBAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO,EAAE,SAAS;AACzC;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,OAAO,QAAQ,KAAK;AAEvD,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AACtE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,gBAAN,cAA4BF,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,wBAAwB;AAAA,MAC1B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrE,EAAE,IAAI,GAAG,MAAM,eAAe,MAAM,WAAW,OAAO,YAAY,GAAG,MAAM,WAAW;AAAA,IAC1F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,UAAU;AAClB,YAAQ,WAAW,EAAE,WAAW,OAAU;AAC1C,QAAI,UAAU;AACV,MAAAC,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA0B;AACtB,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA8C;AAC1C,kBAAQ,WAAW;AAAA,YACf,WAAW;AAAA,YACX,YAAY,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,SAAiB,UAAU;AAAA,UACpH;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,SAAS,cAAc;AAC/B,iBAAW,oBAAoB,QAAQ,SAAS,YAAY,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC9H,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;AAE1C,IAAM,kBAAN,cAA8BF,aAAwB;AAAA,EAClD,cAAc;AACV,UAAM,0BAA0B;AAAA,MAC5B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACnF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,kBAAkB;AAC1B,QAAI,UAAU;AACV,MAAAC,wBAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAoC;AAChC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACvE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAChE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,mBAAN,cAA+BF,aAAyB;AAAA,EACpD,cAAc;AACV,UAAM,2BAA2B;AAAA,MAC7B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjE,EAAE,IAAI,GAAG,MAAM,iBAAiB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,eAAe;AAAA,IAChH,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,MAAM;AACd,YAAQ,eAAe,CAAC;AACxB,QAAI,UAAU;AACV,MAAAC,wBAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAsB;AAClB,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACJ;AAAA,QAA6D;AACzD,kBAAQ,aAAa,KAAK,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAC7F;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,GAAG;AAE9D,aAAS,IAAI,GAAG,IAAI,QAAQ,aAAa,QAAQ;AAC7C,qBAAe,oBAAoB,QAAQ,aAAa,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC9H,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,YAAN,cAAwBF,aAAkB;AAAA,EACtC,cAAc;AACV,UAAM,oBAAoB;AAAA,MACtB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,GAAG,MAAM,YAAY;AAAA,MACrE,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,IAClE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAoC;AACvC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAA6B,MAAM,SAAS,KAAK;AACrD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAqB;AACvG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAgD;AAC5C,kBAAQ,cAAc,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,WAAW;AAC1G;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAe,QAAuB,SAA4C;AAElG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ;AACR,kBAAY,oBAAoB,QAAQ,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACjH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,OAAO,IAAI,UAAU;AAElC,IAAM,wBAAN,cAAoCF,aAA8B;AAAA,EAC9D,cAAc;AACV,UAAM,gCAAgC;AAAA,MAClC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,GAAG,MAAM,YAAY;AAAA,MACrE,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,GAAG,MAAM,eAAe;AAAA,MACxE,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC9D,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,QAAQ,GAAG,MAAM,CAAC,yBAAyB,SAAS,EAAE;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4D;AAC/D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,YAAY;AACpB,QAAI,UAAU;AACV,MAAAC,wBAAyC,MAAM,SAAS,KAAK;AACjE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6C;AAC/H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAgD;AAC5C,kBAAQ,cAAc,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,WAAW;AAC1G;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,cAAc,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,WAAW;AAC7G;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA2B,QAAuB,SAA4C;AAE9G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ;AACR,kBAAY,oBAAoB,QAAQ,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ;AACR,qBAAe,oBAAoB,QAAQ,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE1H,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAC1D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,mBAAmB,IAAI,sBAAsB;AAE1D,IAAM,+BAAN,cAA2CF,aAAqC;AAAA,EAC5E,cAAc;AACV,UAAM,uCAAuC;AAAA,MACzC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7E,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,IACpF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0E;AAC7E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,gBAAgB;AACxB,YAAQ,gBAAgB;AACxB,YAAQ,UAAU,CAAC;AACnB,QAAI,UAAU;AACV,MAAAC,wBAAgD,MAAM,SAAS,KAAK;AACxE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2D;AAC7I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAkC;AAC9B,kBAAQ,gBAAgB,OAAO,OAAO;AACtC;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,gBAAgB,OAAO,OAAO;AACtC;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,QAAQ,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAChF;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkC,QAAuB,SAA4C;AAErH,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,aAAa;AAExE,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,aAAa;AAExE,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,aAAO,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAClI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,0BAA0B,IAAI,6BAA6B;AAExE,IAAM,+BAAN,cAA2CF,aAAqC;AAAA,EAC5E,cAAc;AACV,UAAM,uCAAuC;AAAA,MACzC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7E,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,IACpF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0E;AAC7E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,gBAAgB;AACxB,YAAQ,gBAAgB;AACxB,QAAI,UAAU;AACV,MAAAC,wBAAgD,MAAM,SAAS,KAAK;AACxE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2D;AAC7I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAkC;AAC9B,kBAAQ,gBAAgB,OAAO,OAAO;AACtC;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,gBAAgB,OAAO,OAAO;AACtC;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkC,QAAuB,SAA4C;AAErH,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,aAAa;AAExE,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,aAAa;AAExE,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAClI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,0BAA0B,IAAI,6BAA6B;AAExE,IAAM,uBAAN,cAAmCF,aAA6B;AAAA,EAC5D,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1E,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MACrG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF,EAAE,IAAI,GAAG,MAAM,uBAAuB,MAAM,OAAO,GAAG,GAAyB,GAAG;AAAA,QAAE,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB,EAAE;AAAA,MACjI,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MACrG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACxE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF,EAAE,IAAI,GAAG,MAAM,oBAAoB,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAA0B,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAuB;AAAA,MAC/F,EAAE,IAAI,IAAI,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC/D;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAA8B,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACxG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0D;AAC7D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,cAAc;AACtB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,oBAAoB,CAAC;AAC7B,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,aAAa;AACrB,QAAI,UAAU;AACV,MAAAC,wBAAwC,MAAM,SAAS,KAAK;AAChE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2C;AAC7H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,cAAc,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtF;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAAmD;AAC/C,eAAK,eAAe,QAAQ,mBAAmB,QAAQ,OAAO;AAC9D;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,cAAc,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtF;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA2D;AACvD,kBAAQ,kBAAkB,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,eAAe;AACzH;AAAA,QACJ;AAAA,QAAiD;AAC7C,kBAAQ,uBAAuB,OAAO,MAAM;AAC5C;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,yBAAyB,OAAO,OAAO;AAC/C;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACQ,eAAe,KAA2C,QAAuB,SAAkC;AACvH,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA6D;AAChH,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,6EAA6E;AAAA,MACrH;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA,oBAAoB,SAA0B,QAAuB,SAA4C;AAE7G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,aAAO,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,iBAAiB;AAC1D,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,kBAAkB,CAAC,CAAC,EAAE,KAAK;AAEzK,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,aAAO,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AAErE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElI,QAAI,QAAQ,yBAAyB;AACjC,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,MAAM,QAAQ,oBAAoB;AAEtE,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ,2BAA2B;AACnC,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,sBAAsB;AAClF,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,kBAAkB,IAAI,qBAAqB;AAExD,IAAM,uBAAN,cAAmCF,aAA6B;AAAA,EAC5D,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,GAAG,MAAM,MAAM;AAAA,MACxD;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,IAC/G,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0D;AAC7D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAwC,MAAM,SAAS,KAAK;AAChE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2C;AAC7H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAmC;AAC/B,kBAAQ,QAAQ,MAAM,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,KAAK;AACxF;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO,EAAE,SAAS;AAC5C;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA0B,QAAuB,SAA4C;AAE7G,QAAI,QAAQ;AACR,YAAM,oBAAoB,QAAQ,OAAO,OAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE3G,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,QAAQ;AAC1D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,kBAAkB,IAAI,qBAAqB;AAExD,IAAM,cAAN,cAA0BF,aAAoB;AAAA,EAC1C,cAAc;AACV,UAAM,sBAAsB;AAAA,MACxB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,aAAa,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,MACjE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,MACpE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,MACvE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,MACpE,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,GAAG,MAAM,YAAY;AAAA,MACrE,EAAE,IAAI,GAAG,MAAM,eAAe,MAAM,OAAO,GAAG,GAAyB,GAAG;AAAA,QAAE,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB,EAAE;AAAA,MACzH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC7E;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC/E;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACnF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwC;AAC3C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,SAAS;AACjB,YAAQ,aAAa;AACrB,YAAQ,UAAU;AAClB,YAAQ,cAAc,CAAC;AACvB,QAAI,UAAU;AACV,MAAAC,wBAA+B,MAAM,SAAS,KAAK;AACvD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyB;AAC3G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,WAAW,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACnG;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,WAAW,OAAO,KAAK;AAC/B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,SAAS,OAAO,KAAK;AAC7B;AAAA,QACJ;AAAA,QAA4B;AACxB,kBAAQ,aAAa,OAAO,KAAK;AACjC;AAAA,QACJ;AAAA,QAAiD;AAC7C,kBAAQ,UAAU,OAAO,MAAM;AAC/B;AAAA,QACJ;AAAA,QAAoD;AAChD,kBAAQ,cAAc,YAAY,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,WAAW;AAC1G;AAAA,QACJ;AAAA,QAA2C;AACvC,eAAK,eAAe,QAAQ,aAAa,QAAQ,OAAO;AACxD;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,eAAe,OAAO,OAAO;AACrC;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACQ,eAAe,KAA4B,QAAuB,SAAkC;AACxG,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAA8C;AACjG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,4DAA4D;AAAA,MACpG;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA,oBAAoB,SAAiB,QAAuB,SAA4C;AAEpG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEnH,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,QAAQ;AAExD,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,MAAM;AAEtD,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,UAAU;AAE1D,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,OAAO;AAExD,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,WAAW;AACpD,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY,CAAC,CAAC,EAAE,KAAK;AAEnK,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ;AACR,kBAAY,oBAAoB,QAAQ,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,GAAG;AAE/D,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEjE,QAAI,QAAQ,iBAAiB;AACzB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY;AAExE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AACjE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,SAAS,IAAI,YAAY;AAEtC,IAAM,eAAN,cAA2BF,aAAqB;AAAA,EAC5C,cAAc;AACV,UAAM,uBAAuB;AAAA,MACzB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IACtE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0C;AAC7C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,YAAY;AACpB,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAgC,MAAM,SAAS,KAAK;AACxD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2B;AAC7G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA2B;AACvB,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,QAAQ,OAAO,MAAM;AAC7B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkB,QAAuB,SAA4C;AAErG,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAE1D,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,KAAK;AACtD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,UAAU,IAAI,aAAa;AAExC,IAAM,aAAN,cAAyBF,aAAmB;AAAA,EACxC,cAAc;AACV,UAAM,qBAAqB;AAAA,MACvB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtG,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,WAAW;AAAA,IACpG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsC;AACzC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ,CAAC;AACjB,YAAQ,QAAQ,CAAC;AACjB,QAAI,UAAU;AACV,MAAAC,wBAA8B,MAAM,SAAS,KAAK;AACtD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuB;AACzG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAiC;AAC7B,kBAAQ,MAAM,KAAK,OAAO,OAAO,CAAC;AAClC;AAAA,QACJ;AAAA,QAAiD;AAC7C,kBAAQ,MAAM,KAAK,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAClF;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgB,QAAuB,SAA4C;AAEnG,aAAS,IAAI,GAAG,IAAI,QAAQ,MAAM,QAAQ;AACtC,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM,CAAC,CAAC;AAEnE,aAAS,IAAI,GAAG,IAAI,QAAQ,MAAM,QAAQ;AACtC,iBAAW,oBAAoB,QAAQ,MAAM,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACnH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,QAAQ,IAAI,WAAW;AAEpC,IAAM,WAAN,cAAuBF,aAAiB;AAAA,EACpC,cAAc;AACV,UAAM,mBAAmB;AAAA,MACrB,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,MAChE,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,IACtE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAkC;AACrC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,QAAI,UAAU;AACV,MAAAC,wBAA4B,MAAM,SAAS,KAAK;AACpD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmB;AACrG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA2C;AACvC,kBAAQ,UAAU,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,OAAO;AACjG;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,YAAY,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,SAAS;AACrG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAc,QAAuB,SAA4C;AAEjG,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,SAAS,OAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,WAAW,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACpH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,MAAM,IAAI,SAAS;AAEhC,IAAM,qBAAN,cAAiCF,aAA2B;AAAA,EACxD,cAAc;AACV,UAAM,6BAA6B;AAAA,MAC/B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,QAAQ,MAAM,WAAW,GAAG,MAAM,WAAW;AAAA,IAChE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsD;AACzD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAAsC,MAAM,SAAS,KAAK;AAC9D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuC;AACzH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,OAAO,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,IAAI;AAC3F;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAwB,QAAuB,SAA4C;AAE3G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ;AACR,iBAAW,oBAAoB,QAAQ,MAAM,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC/G,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,gBAAgB,IAAI,mBAAmB;AAEpD,IAAM,YAAN,cAAwBF,aAAkB;AAAA,EACtC,cAAc;AACV,UAAM,oBAAoB;AAAA,MACtB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACpH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACpH,EAAE,IAAI,GAAG,MAAM,eAAe,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,cAAc;AAAA,MACzG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC3G;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,IACjH,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAoC;AACvC,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,aAAa,CAAC;AACtB,YAAQ,YAAY,CAAC;AACrB,YAAQ,cAAc,CAAC;AACvB,QAAI,UAAU;AACV,MAAAC,wBAA6B,MAAM,SAAS,KAAK;AACrD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAqB;AACvG,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO,EAAE,SAAS;AACnD;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO,EAAE,SAAS;AACnD;AAAA,QACJ;AAAA,QAA0D;AACtD,kBAAQ,WAAW,KAAK,cAAc,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAC1F;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,UAAU,KAAK,OAAO,OAAO,CAAC;AACtC;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,YAAY,KAAK,OAAO,OAAO,CAAC;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAe,QAAuB,SAA4C;AAElG,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,OAAO,QAAQ,eAAe;AAEjE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,eAAe;AAEjE,aAAS,IAAI,GAAG,IAAI,QAAQ,WAAW,QAAQ;AAC3C,oBAAc,oBAAoB,QAAQ,WAAW,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE3H,aAAS,IAAI,GAAG,IAAI,QAAQ,UAAU,QAAQ;AAC1C,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,CAAC,CAAC;AAEvE,aAAS,IAAI,GAAG,IAAI,QAAQ,YAAY,QAAQ;AAC5C,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY,CAAC,CAAC;AACzE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,OAAO,IAAI,UAAU;AAElC,IAAM,kBAAN,cAA8BF,aAAwB;AAAA,EAClD,cAAc;AACV,UAAM,0BAA0B;AAAA,MAC5B,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,QAAQ,OAAO,KAAK,GAAG,MAAM,CAAC,gCAAgC,gBAAgB,EAAE;AAAA,MAC/G,EAAE,IAAI,GAAG,MAAM,QAAQ,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,SAAS;AAAA,MACtE,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,WAAW;AAAA,MACzE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,OAAO;AAAA,MACtE,EAAE,IAAI,GAAG,MAAM,qBAAqB,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,WAAW;AAAA,MACrF,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,MAAM;AAAA,MACpE,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,WAAW;AAAA,MAC5E,EAAE,IAAI,GAAG,MAAM,OAAO,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,IAAI;AAAA,MAChE,EAAE,IAAI,GAAG,MAAM,QAAQ,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,KAAK;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAK,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACjH,EAAE,IAAI,IAAI,MAAM,aAAa,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,SAAS;AAAA,MAC5E,EAAE,IAAI,IAAI,MAAM,WAAW,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,QAAQ;AAAA,MACzE,EAAE,IAAI,IAAI,MAAM,SAAS,MAAM,QAAQ,OAAO,KAAK,GAAG,MAAM,CAAC,yBAAyB,SAAS,EAAE;AAAA,MACjG,EAAE,IAAI,IAAI,MAAM,OAAO,MAAM,QAAQ,OAAO,KAAK,GAAG,MAAM,CAAC,uBAAuB,OAAO,EAAE;AAAA,IAC/F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,IAAI,EAAE,WAAW,OAAU;AACnC,QAAI,UAAU;AACV,MAAAC,wBAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA+C;AAC3C,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,QAAQ,OAAO,MAAM;AAAA,UACzB;AACA;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,MAAM,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,IAAI;AAAA,UAC/F;AACA;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,KAAK;AAAA,UACnG;AACA;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,QAAQ,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,MAAM;AAAA,UACjG;AACA;AAAA,QACJ;AAAA,QAAoD;AAChD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,iBAAiB,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,eAAe;AAAA,UACvH;AACA;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,MAAM,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,KAAK;AAAA,UAC9F;AACA;AAAA,QACJ;AAAA,QAA2C;AACvC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,UAAU,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,QAAQ;AAAA,UACzG;AACA;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,KAAK,IAAI,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,GAAG;AAAA,UACxF;AACA;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,MAAM,KAAK,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,IAAI;AAAA,UAC3F;AACA;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,aAAa,OAAO,OAAO,EAAE,SAAS;AAAA,UAC1C;AACA;AAAA,QACJ;AAAA,QAA0C;AACtC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,UAAU,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,QAAQ;AAAA,UACvG;AACA;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,SAAS,QAAQ,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,OAAO;AAAA,UACpG;AACA;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,OAAO,MAAM;AAAA,UACxB;AACA;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,KAAK,OAAO,MAAM;AAAA,UACtB;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,EAAE,MAAM;AAEzD,QAAI,QAAQ,EAAE,cAAc;AACxB,eAAS,oBAAoB,QAAQ,EAAE,MAAM,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE/G,QAAI,QAAQ,EAAE,cAAc;AACxB,iBAAW,oBAAoB,QAAQ,EAAE,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,oBAAoB,QAAQ,EAAE,QAAQ,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE/G,QAAI,QAAQ,EAAE,cAAc;AACxB,iBAAW,oBAAoB,QAAQ,EAAE,iBAAiB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE5H,QAAI,QAAQ,EAAE,cAAc;AACxB,YAAM,oBAAoB,QAAQ,EAAE,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE7G,QAAI,QAAQ,EAAE,cAAc;AACxB,iBAAW,oBAAoB,QAAQ,EAAE,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAErH,QAAI,QAAQ,EAAE,cAAc;AACxB,UAAI,oBAAoB,QAAQ,EAAE,KAAK,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEzG,QAAI,QAAQ,EAAE,cAAc;AACxB,WAAK,oBAAoB,QAAQ,EAAE,MAAM,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE3G,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,OAAO,QAAQ,EAAE,WAAW;AAEhE,QAAI,QAAQ,EAAE,cAAc;AACxB,eAAS,oBAAoB,QAAQ,EAAE,UAAU,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEpH,QAAI,QAAQ,EAAE,cAAc;AACxB,cAAQ,oBAAoB,QAAQ,EAAE,SAAS,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,MAAM,QAAQ,EAAE,KAAK;AAEzD,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,MAAM,QAAQ,EAAE,GAAG;AACvD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,gBAAN,cAA4BF,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,wBAAwB;AAAA,MAC1B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAuB;AAAA,IAC1E,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,YAAY;AACpB,QAAI,UAAU;AACV,MAAAC,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA2B;AACvB,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAC1D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;AAE1C,IAAM,gBAAN,cAA4BF,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,wBAAwB;AAAA,MAC1B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,WAAW;AAAA,IACrG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,SAAS,CAAC;AAClB,QAAI,UAAU;AACV,MAAAC,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,OAAO,KAAK,WAAW,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACnF;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,OAAO,QAAQ;AACvC,iBAAW,oBAAoB,QAAQ,OAAO,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACpH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;AAE1C,IAAM,cAAN,cAA0BF,aAAoB;AAAA,EAC1C,cAAc;AACV,UAAM,sBAAsB;AAAA,MACxB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,OAAO;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAsB;AAAA,IACnE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwC;AAC3C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,UAAU,CAAC;AACnB,YAAQ,MAAM;AACd,QAAI,UAAU;AACV,MAAAC,wBAA+B,MAAM,SAAS,KAAK;AACvD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyB;AAC3G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,QAAQ,KAAK,OAAO,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAChF;AAAA,QACJ;AAAA,QAAoB;AAChB,kBAAQ,MAAM,OAAO,KAAK;AAC1B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAiB,QAAuB,SAA4C;AAEpG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,aAAO,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjH,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,GAAG;AACnD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,SAAS,IAAI,YAAY;AAEtC,IAAM,kBAAN,cAA8BF,aAAwB;AAAA,EAClD,cAAc;AACV,UAAM,0BAA0B;AAAA,MAC5B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,GAAG,MAAM,UAAU;AAAA,IAChE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgD;AACnD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAAmC,MAAM,SAAS,KAAK;AAC3D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiC;AACnH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,QAAQ,UAAU,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,KAAK;AAC5F;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqB,QAAuB,SAA4C;AAExG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ;AACR,gBAAU,oBAAoB,QAAQ,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC/G,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,aAAa,IAAI,gBAAgB;AAE9C,IAAM,iBAAN,cAA6BF,aAAuB;AAAA,EAChD,cAAc;AACV,UAAM,yBAAyB;AAAA,MAC3B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,OAAO;AAAA,QAAS,GAAG;AAAA;AAAA,MAAuB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAS,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC9F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA8C;AACjD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ,EAAE,WAAW,OAAU;AACvC,QAAI,UAAU;AACV,MAAAC,wBAAkC,MAAM,SAAS,KAAK;AAC1D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA+B;AACjH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA2B;AACvB,kBAAQ,QAAQ;AAAA,YACZ,WAAW;AAAA,YACX,UAAU,OAAO,MAAM;AAAA,UAC3B;AACA;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,QAAQ;AAAA,YACZ,WAAW;AAAA,YACX,aAAa,OAAO,OAAO;AAAA,UAC/B;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAoB,QAAuB,SAA4C;AAEvG,QAAI,QAAQ,MAAM,cAAc;AAC5B,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,MAAM,QAAQ;AAE/D,QAAI,QAAQ,MAAM,cAAc;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM,WAAW;AAC5E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,YAAY,IAAI,eAAe;AAE5C,IAAM,0BAAN,cAAsCF,aAAgC;AAAA,EAClE,cAAc;AACV,UAAM,kCAAkC;AAAA,MACpC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,QAAQ,GAAG,MAAM,CAAC,8BAA8B,cAAc,EAAE;AAAA,IAC3G,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgE;AACnE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,gBAAgB;AACxB,QAAI,UAAU;AACV,MAAAC,wBAA2C,MAAM,SAAS,KAAK;AACnE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiD;AACnI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAqD;AACjD,kBAAQ,gBAAgB,OAAO,MAAM;AACrC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA6B,QAAuB,SAA4C;AAEhH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,MAAM,QAAQ,aAAa;AAC9D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,qBAAqB,IAAI,wBAAwB;AAE9D,IAAM,2BAAN,cAAuCF,aAAiC;AAAA,EACpE,cAAc;AACV,UAAM,mCAAmC;AAAA,MACrC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAsB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACpF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAkE;AACrE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,oBAAoB;AAC5B,QAAI,UAAU;AACV,MAAAC,wBAA4C,MAAM,SAAS,KAAK;AACpE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmD;AACrI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAqC;AACjC,kBAAQ,oBAAoB,OAAO,OAAO;AAC1C;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA8B,QAAuB,SAA4C;AAEjH,QAAI,QAAQ,sBAAsB;AAC9B,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,iBAAiB;AAC5E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,sBAAsB,IAAI,yBAAyB;AAEhE,IAAM,mBAAN,cAA+BF,aAAyB;AAAA,EACpD,cAAc;AACV,UAAM,2BAA2B;AAAA,MAC7B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzG,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,MACvH,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,MACtH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7E,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAkD;AACrD,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,QAAQ,CAAC;AACjB,YAAQ,WAAW,CAAC;AACpB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,eAAe,CAAC;AACxB,YAAQ,aAAa;AACrB,QAAI,UAAU;AACV,MAAAC,wBAAoC,MAAM,SAAS,KAAK;AAC5D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAmC;AACrH,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,MAAM,KAAK,OAAO,OAAO,CAAC;AAClC;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,SAAS,KAAK,OAAO,OAAO,CAAC;AACrC;AAAA,QACJ;AAAA,QAAwE;AACpE,kBAAQ,cAAc,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACvG;AAAA,QACJ;AAAA,QAAuE;AACnE,kBAAQ,aAAa,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtG;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAA8B;AAC1B,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAsB,QAAuB,SAA4C;AAEzG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,MAAM,QAAQ;AACtC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM,CAAC,CAAC;AAEnE,aAAS,IAAI,GAAG,IAAI,QAAQ,SAAS,QAAQ;AACzC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,SAAS,CAAC,CAAC;AAEtE,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,8BAAwB,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,aAAS,IAAI,GAAG,IAAI,QAAQ,aAAa,QAAQ;AAC7C,8BAAwB,oBAAoB,QAAQ,aAAa,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvI,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AACrE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,cAAc,IAAI,iBAAiB;AAEhD,IAAM,+BAAN,cAA2CF,aAAqC;AAAA,EAC5E,cAAc;AACV,UAAM,uCAAuC;AAAA,MACzC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC9F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAkC,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAwB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAwB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtG;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAsB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAa,GAAG;AAAA;AAAA,MAAwB;AAAA,IACzG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0E;AAC7E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,YAAY,EAAE,WAAW,OAAU;AAC3C,QAAI,UAAU;AACV,MAAAC,wBAAgD,MAAM,SAAS,KAAK;AACxE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2D;AAC7I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA2B;AACvB,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,SAAS,OAAO,OAAO;AAAA,UAC3B;AACA;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,SAAS,OAAO,OAAO;AAAA,UAC3B;AACA;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,YAAY,OAAO,OAAO;AAAA,UAC9B;AACA;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,eAAe,OAAO,OAAO;AAAA,UACjC;AACA;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,eAAe,OAAO,OAAO;AAAA,UACjC;AACA;AAAA,QACJ;AAAA,QAAiD;AAC7C,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,2BAA2B,OAAO,OAAO;AAAA,UAC7C;AACA;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,oBAAoB,OAAO,OAAO;AAAA,UACtC;AACA;AAAA,QACJ;AAAA,QAA0B;AACtB,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,QAAQ,OAAO,OAAO;AAAA,UAC1B;AACA;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,mBAAmB,OAAO,OAAO;AAAA,UACrC;AACA;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,YAAY;AAAA,YAChB,WAAW;AAAA,YACX,kBAAkB,OAAO,OAAO;AAAA,UACpC;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkC,QAAuB,SAA4C;AAErH,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,OAAO;AAE5E,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,OAAO;AAE5E,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,UAAU;AAE/E,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,aAAa;AAElF,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,aAAa;AAElF,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,yBAAyB;AAE9F,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,kBAAkB;AAEvF,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,MAAM;AAE3E,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,iBAAiB;AAEtF,QAAI,QAAQ,UAAU,cAAc;AAChC,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU,gBAAgB;AACtF,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,0BAA0B,IAAI,6BAA6B;AAExE,IAAM,cAAN,cAA0BF,aAAoB;AAAA,EAC1C,cAAc;AACV,UAAM,sBAAsB;AAAA,MACxB;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACxE,EAAE,IAAI,GAAG,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,eAAe;AAAA,MACpE,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,MACvH,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,IAC1H,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwC;AAC3C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,YAAY;AACpB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,eAAe,CAAC;AACxB,QAAI,UAAU;AACV,MAAAC,wBAA+B,MAAM,SAAS,KAAK;AACvD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyB;AAC3G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,YAAY,OAAO,OAAO;AAClC;AAAA,QACJ;AAAA,QAAwD;AACpD,kBAAQ,WAAW,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACvG;AAAA,QACJ;AAAA,QAAwE;AACpE,kBAAQ,cAAc,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACvG;AAAA,QACJ;AAAA,QAAuE;AACnE,kBAAQ,aAAa,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAiB,QAAuB,SAA4C;AAEpG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,SAAS;AAEpE,QAAI,QAAQ;AACR,qBAAe,oBAAoB,QAAQ,UAAU,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,8BAAwB,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,aAAS,IAAI,GAAG,IAAI,QAAQ,aAAa,QAAQ;AAC7C,8BAAwB,oBAAoB,QAAQ,aAAa,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACvI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,SAAS,IAAI,YAAY;AAEtC,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACxF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuC;AACnC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AACtE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;AAEtD,IAAM,gBAAN,cAA4BF,aAAsB;AAAA,EAC9C,cAAc;AACV,UAAM,wBAAwB;AAAA,MAC1B;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,MACvH,EAAE,IAAI,GAAG,MAAM,kBAAkB,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,wBAAwB;AAAA,IAC1H,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4C;AAC/C,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,UAAU;AAClB,YAAQ,UAAU;AAClB,YAAQ,WAAW;AACnB,YAAQ,gBAAgB,CAAC;AACzB,YAAQ,eAAe,CAAC;AACxB,QAAI,UAAU;AACV,MAAAC,wBAAiC,MAAM,SAAS,KAAK;AACzD,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6B;AAC/G,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAA0B;AACtB,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA0B;AACtB,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAwE;AACpE,kBAAQ,cAAc,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACvG;AAAA,QACJ;AAAA,QAAuE;AACnE,kBAAQ,aAAa,KAAK,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACtG;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmB,QAAuB,SAA4C;AAEtG,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,OAAO;AAEzD,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,aAAS,IAAI,GAAG,IAAI,QAAQ,cAAc,QAAQ;AAC9C,8BAAwB,oBAAoB,QAAQ,cAAc,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,aAAS,IAAI,GAAG,IAAI,QAAQ,aAAa,QAAQ;AAC7C,8BAAwB,oBAAoB,QAAQ,aAAa,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACvI,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,WAAW,IAAI,cAAc;AAE1C,IAAM,uBAAN,cAAmCF,aAA6B;AAAA,EAC5D,cAAc;AACV,UAAM,+BAA+B;AAAA,MACjC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,eAAe;AAAA,MACrG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACpE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IACvE,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0D;AAC7D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,SAAS,CAAC;AAClB,YAAQ,SAAS;AACjB,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAwC,MAAM,SAAS,KAAK;AAChE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2C;AAC7H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAsD;AAClD,kBAAQ,OAAO,KAAK,eAAe,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AACvF;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA0B,QAAuB,SAA4C;AAE7G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,aAAS,IAAI,GAAG,IAAI,QAAQ,OAAO,QAAQ;AACvC,qBAAe,oBAAoB,QAAQ,OAAO,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExH,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM;AAEjE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAChE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,kBAAkB,IAAI,qBAAqB;AAExD,IAAM,wBAAN,cAAoCF,aAA8B;AAAA,EAC9D,cAAc;AACV,UAAM,gCAAgC;AAAA,MAClC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACzE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAiB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAsB;AAAA,MACnF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAsB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAsB;AAAA,MACnF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACpF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4D;AAC/D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,aAAa;AACrB,QAAI,UAAU;AACV,MAAAC,wBAAyC,MAAM,SAAS,KAAK;AACjE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6C;AAC/H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA8B;AAC1B,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,eAAe,OAAO,OAAO;AACrC;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,cAAc,OAAO,KAAK;AAClC;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,iBAAiB,OAAO,KAAK;AACrC;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,aAAa,OAAO,KAAK;AACjC;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA2B,QAAuB,SAA4C;AAE9G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AAErE,QAAI,QAAQ,iBAAiB;AACzB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,YAAY;AAEvE,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AAErE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,WAAW;AAE3D,QAAI,QAAQ,mBAAmB;AAC3B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,cAAc;AAE9D,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,UAAU;AAE1D,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAClE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,mBAAmB,IAAI,sBAAsB;AAE1D,IAAM,6BAAN,cAAyCF,aAAmC;AAAA,EACxE,cAAc;AACV,UAAM,qCAAqC;AAAA,MACvC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsE;AACzE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAA8C,MAAM,SAAS,KAAK;AACtE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuD;AACzI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgC,QAAuB,SAA4C;AAEnH,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,wBAAwB,IAAI,2BAA2B;AAEpE,IAAM,6BAAN,cAAyCF,aAAmC;AAAA,EACxE,cAAc;AACV,UAAM,qCAAqC;AAAA,MACvC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsE;AACzE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAA8C,MAAM,SAAS,KAAK;AACtE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuD;AACzI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgC,QAAuB,SAA4C;AAEnH,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,wBAAwB,IAAI,2BAA2B;AAEpE,IAAM,wBAAN,cAAoCF,aAA8B;AAAA,EAC9D,cAAc;AACV,UAAM,gCAAgC;AAAA,MAClC,EAAE,IAAI,GAAG,MAAM,QAAQ,MAAM,QAAQ,GAAG,MAAM,CAAC,qCAAqC,qBAAqB,EAAE;AAAA,MAC3G;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAsB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACrH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACxF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAyB;AAAA,MAChF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAiB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAChH;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAA2B,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAyB;AAAA,MACjG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAC7G;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAa,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAC5G;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACpH;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACrH;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MACnH;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAiC,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAsB;AAAA,MACrG;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAyB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACnG,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4D;AAC/D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,QAAI,UAAU;AACV,MAAAC,wBAAyC,MAAM,SAAS,KAAK;AACjE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6C;AAC/H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAkD;AAC9C,kBAAQ,OAAO,OAAO,MAAM;AAC5B;AAAA,QACJ;AAAA,QAA8C;AAC1C,kBAAQ,mBAAmB,OAAO,OAAO,EAAE,SAAS;AACpD;AAAA,QACJ;AAAA,QAA2C;AACvC,kBAAQ,gBAAgB,OAAO,OAAO;AACtC;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,cAAc,OAAO,OAAO,EAAE,SAAS;AAC/C;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,uBAAuB,OAAO,OAAO;AAC7C;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,YAAY,OAAO,OAAO,EAAE,SAAS;AAC7C;AAAA,QACJ;AAAA,QAAqC;AACjC,kBAAQ,WAAW,OAAO,OAAO,EAAE,SAAS;AAC5C;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,iBAAiB,OAAO,OAAO,EAAE,SAAS;AAClD;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO,EAAE,SAAS;AACnD;AAAA,QACJ;AAAA,QAA2C;AACvC,kBAAQ,gBAAgB,OAAO,OAAO,EAAE,SAAS;AACjD;AAAA,QACJ;AAAA,QAAuD;AACnD,kBAAQ,4BAA4B,OAAO,KAAK;AAChD;AAAA,QACJ;AAAA,QAAiD;AAC7C,kBAAQ,sBAAsB,OAAO,OAAO;AAC5C;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA2B,QAAuB,SAA4C;AAE9G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,MAAM,QAAQ,IAAI;AAErD,QAAI,QAAQ,qBAAqB;AAC7B,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,gBAAgB;AAElE,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,GAAGA,UAAS,KAAK,EAAE,OAAO,QAAQ,aAAa;AAE9D,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,MAAM;AAExD,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,WAAW;AAE7D,QAAI,QAAQ,yBAAyB;AACjC,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,oBAAoB;AAEtE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,SAAS;AAE3D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,QAAQ;AAE1D,QAAI,QAAQ,mBAAmB;AAC3B,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,OAAO,QAAQ,cAAc;AAEjE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,OAAO,QAAQ,eAAe;AAElE,QAAI,QAAQ,kBAAkB;AAC1B,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,OAAO,QAAQ,aAAa;AAEhE,QAAI,QAAQ,8BAA8B;AACtC,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,KAAK,QAAQ,yBAAyB;AAE1E,QAAI,QAAQ,wBAAwB;AAChC,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,mBAAmB;AAC/E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,mBAAmB,IAAI,sBAAsB;AAE1D,IAAM,+BAAN,cAA2CF,aAAqC;AAAA,EAC5E,cAAc;AACV,UAAM,uCAAuC;AAAA,MACzC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAC3F;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,IAC/F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0E;AAC7E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,MAAM;AACd,YAAQ,MAAM;AACd,QAAI,UAAU;AACV,MAAAC,wBAAgD,MAAM,SAAS,KAAK;AACxE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2D;AAC7I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAsB;AAClB,kBAAQ,MAAM,OAAO,OAAO,EAAE,SAAS;AACvC;AAAA,QACJ;AAAA,QAAsB;AAClB,kBAAQ,MAAM,OAAO,OAAO,EAAE,SAAS;AACvC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkC,QAAuB,SAA4C;AAErH,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,OAAO,QAAQ,GAAG;AAErD,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,GAAG;AACrD,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,0BAA0B,IAAI,6BAA6B;AAExE,IAAM,0BAAN,cAAsCF,aAAgC;AAAA,EAClE,cAAc;AACV,UAAM,kCAAkC;AAAA,MACpC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAmB,MAAM;AAAA,QAAU,OAAO;AAAA,QAAK,GAAG;AAAA;AAAA,MAAsB;AAAA,MACvF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,OAAO;AAAA,QAAK,GAAG;AAAA,QAAyB,GAAG;AAAA;AAAA,MAAsB;AAAA,MAC1G,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,wBAAwB;AAAA,IAC1F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgE;AACnE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,IAAI,EAAE,WAAW,OAAU;AACnC,QAAI,UAAU;AACV,MAAAC,wBAA2C,MAAM,SAAS,KAAK;AACnE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiD;AACnI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAgC;AAC5B,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,gBAAgB,OAAO,KAAK;AAAA,UAChC;AACA;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,QAAQ,OAAO,OAAO,EAAE,SAAS;AAAA,UACrC;AACA;AAAA,QACJ;AAAA,QAAqD;AACjD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,KAAK;AAAA,UAChH;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA6B,QAAuB,SAA4C;AAEhH,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,GAAGC,UAAS,MAAM,EAAE,KAAK,QAAQ,EAAE,cAAc;AAEhE,QAAI,QAAQ,EAAE,cAAc;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,EAAE,MAAM;AAE1D,QAAI,QAAQ,EAAE,cAAc;AACxB,8BAAwB,oBAAoB,QAAQ,EAAE,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAC/H,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,qBAAqB,IAAI,wBAAwB;AAE9D,IAAM,4BAAN,cAAwCF,aAAkC;AAAA,EACtE,cAAc;AACV,UAAM,oCAAoC;AAAA,MACtC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACpE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC/E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACzF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAoE;AACvE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,MAAM;AACd,YAAQ,SAAS;AACjB,QAAI,UAAU;AACV,MAAAC,wBAA6C,MAAM,SAAS,KAAK;AACrE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAqD;AACvI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAsB;AAClB,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAkC;AAC9B,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA+B,QAAuB,SAA4C;AAElH,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,GAAG;AAE9D,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM;AAEjE,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM;AAEjE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AACtE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,uBAAuB,IAAI,0BAA0B;AAElE,IAAM,kCAAN,cAA8CF,aAAwC;AAAA,EAClF,cAAc;AACV,UAAM,0CAA0C;AAAA,MAC5C;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAM,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC9E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgF;AACnF,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,KAAK;AACb,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAmD,MAAM,SAAS,KAAK;AAC3E,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiE;AACnJ,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAqB;AACjB,kBAAQ,KAAK,OAAO,OAAO;AAC3B;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqC,QAAuB,SAA4C;AAExH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,IAAI;AAEtD,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,OAAO;AACf,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,EAAE;AAE7D,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,6BAA6B,IAAI,gCAAgC;AAE9E,IAAM,6BAAN,cAAyCF,aAAmC;AAAA,EACxE,cAAc;AACV,UAAM,qCAAqC;AAAA,MACvC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAM,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC9E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsE;AACzE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,KAAK;AACb,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAA8C,MAAM,SAAS,KAAK;AACtE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuD;AACzI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAqB;AACjB,kBAAQ,KAAK,OAAO,OAAO;AAC3B;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgC,QAAuB,SAA4C;AAEnH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,IAAI;AAEtD,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,OAAO;AACf,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,EAAE;AAE7D,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,wBAAwB,IAAI,2BAA2B;AAEpE,IAAM,kCAAN,cAA8CF,aAAwC;AAAA,EAClF,cAAc;AACV,UAAM,0CAA0C;AAAA,MAC5C;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAM,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAS,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC9E;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC7F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgF;AACnF,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,KAAK;AACb,YAAQ,QAAQ;AAChB,QAAI,UAAU;AACV,MAAAC,wBAAmD,MAAM,SAAS,KAAK;AAC3E,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiE;AACnJ,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAqB;AACjB,kBAAQ,KAAK,OAAO,OAAO;AAC3B;AAAA,QACJ;AAAA,QAAwB;AACpB,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAiC;AAC7B,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqC,QAAuB,SAA4C;AAExH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,IAAI;AAEtD,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,OAAO;AACf,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,EAAE;AAE7D,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,UAAU;AAClB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,KAAK;AAEhE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,6BAA6B,IAAI,gCAAgC;AAE9E,IAAM,6BAAN,cAAyCF,aAAmC;AAAA,EACxE,cAAc;AACV,UAAM,qCAAqC;AAAA,MACvC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAyB;AAAA,MAClF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC9E,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAsE;AACzE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,cAAc;AACtB,QAAI,UAAU;AACV,MAAAC,wBAA8C,MAAM,SAAS,KAAK;AACtE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAuD;AACzI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA+B;AAC3B,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAgC,QAAuB,SAA4C;AAEnH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,IAAI;AAEtD,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,OAAO;AAEzD,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AACtE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,wBAAwB,IAAI,2BAA2B;AAEpE,IAAM,+BAAN,cAA2CF,aAAqC;AAAA,EAC5E,cAAc;AACV,UAAM,uCAAuC;AAAA,MACzC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAyB;AAAA,MACnE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAM,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAChE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAc,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC5E,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA0E;AAC7E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,OAAO;AACf,YAAQ,WAAW;AACnB,YAAQ,KAAK;AACb,YAAQ,aAAa;AACrB,QAAI,UAAU;AACV,MAAAC,wBAAgD,MAAM,SAAS,KAAK;AACxE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA2D;AAC7I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAA2B;AACvB,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAqB;AACjB,kBAAQ,KAAK,OAAO,OAAO;AAC3B;AAAA,QACJ;AAAA,QAA6B;AACzB,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAkC,QAAuB,SAA4C;AAErH,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,OAAO,QAAQ,IAAI;AAEtD,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,OAAO;AACf,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,EAAE;AAE7D,QAAI,QAAQ,eAAe;AACvB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,UAAU;AACrE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,0BAA0B,IAAI,6BAA6B;AAExE,IAAM,kCAAN,cAA8CF,aAAwC;AAAA,EAClF,cAAc;AACV,UAAM,0CAA0C;AAAA,MAC5C;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACpE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAsB;AAAA,IACvF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgF;AACnF,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,UAAU;AAClB,YAAQ,SAAS;AACjB,QAAI,UAAU;AACV,MAAAC,wBAAmD,MAAM,SAAS,KAAK;AAC3E,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiE;AACnJ,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAA0B;AACtB,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAsC;AAClC,kBAAQ,cAAc,OAAO,KAAK;AAClC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAqC,QAAuB,SAA4C;AAExH,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAElE,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM;AAEjE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,MAAM,EAAE,KAAK,QAAQ,WAAW;AAC3D,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,6BAA6B,IAAI,gCAAgC;AAE9E,IAAM,0BAAN,cAAsCF,aAAgC;AAAA,EAClE,cAAc;AACV,UAAM,kCAAkC;AAAA,MACpC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAO,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAU,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MACpE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAiB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACtF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAqB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IAC9F,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAgE;AACnE,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,MAAM;AACd,YAAQ,SAAS;AACjB,QAAI,UAAU;AACV,MAAAC,wBAA2C,MAAM,SAAS,KAAK;AACnE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAiD;AACnI,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAsB;AAClB,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACJ;AAAA,QAAyB;AACrB,kBAAQ,SAAS,OAAO,OAAO;AAC/B;AAAA,QACJ;AAAA,QAAyC;AACrC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAA6B,QAAuB,SAA4C;AAEhH,QAAI,QAAQ,QAAQ;AAChB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,GAAG;AAE9D,QAAI,QAAQ,WAAW;AACnB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,MAAM;AAEjE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAC1E,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,qBAAqB,IAAI,wBAAwB;AAE9D,IAAM,gCAAN,cAA4CF,aAAsC;AAAA,EAC9E,cAAc;AACV,UAAM,wCAAwC;AAAA,MAC1C,EAAE,IAAI,GAAG,MAAM,QAAQ,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,qBAAqB;AAAA,MAClF,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,2BAA2B;AAAA,MAC9F,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,sBAAsB;AAAA,MACpF,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,2BAA2B;AAAA,MAC9F,EAAE,IAAI,GAAG,MAAM,SAAS,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,sBAAsB;AAAA,MACpF,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,wBAAwB;AAAA,MACxF,EAAE,IAAI,GAAG,MAAM,cAAc,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,2BAA2B;AAAA,MAC9F,EAAE,IAAI,GAAG,MAAM,MAAM,MAAM,WAAW,OAAO,KAAK,GAAG,MAAM,mBAAmB;AAAA,IAClF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAA4E;AAC/E,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,IAAI,EAAE,WAAW,OAAU;AACnC,QAAI,UAAU;AACV,MAAAC,wBAAiD,MAAM,SAAS,KAAK;AACzE,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAA6D;AAC/I,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAiD;AAC7C,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,MAAM,qBAAqB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,IAAI;AAAA,UAC3G;AACA;AAAA,QACJ;AAAA,QAA6D;AACzD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,YAAY,2BAA2B,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,UAAU;AAAA,UAC7H;AACA;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,sBAAsB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,KAAK;AAAA,UAC9G;AACA;AAAA,QACJ;AAAA,QAA6D;AACzD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,YAAY,2BAA2B,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,UAAU;AAAA,UAC7H;AACA;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,OAAO,sBAAsB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,KAAK;AAAA,UAC9G;AACA;AAAA,QACJ;AAAA,QAAuD;AACnD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,SAAS,wBAAwB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,OAAO;AAAA,UACpH;AACA;AAAA,QACJ;AAAA,QAA6D;AACzD,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,YAAY,2BAA2B,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,UAAU;AAAA,UAC7H;AACA;AAAA,QACJ;AAAA,QAA6C;AACzC,kBAAQ,IAAI;AAAA,YACR,WAAW;AAAA,YACX,IAAI,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,EAAU,EAAE;AAAA,UACrG;AACA;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACA,oBAAoB,SAAmC,QAAuB,SAA4C;AAEtH,QAAI,QAAQ,EAAE,cAAc;AACxB,2BAAqB,oBAAoB,QAAQ,EAAE,MAAM,OAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE3H,QAAI,QAAQ,EAAE,cAAc;AACxB,iCAA2B,oBAAoB,QAAQ,EAAE,YAAY,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvI,QAAI,QAAQ,EAAE,cAAc;AACxB,4BAAsB,oBAAoB,QAAQ,EAAE,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE7H,QAAI,QAAQ,EAAE,cAAc;AACxB,iCAA2B,oBAAoB,QAAQ,EAAE,YAAY,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvI,QAAI,QAAQ,EAAE,cAAc;AACxB,4BAAsB,oBAAoB,QAAQ,EAAE,OAAO,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE7H,QAAI,QAAQ,EAAE,cAAc;AACxB,8BAAwB,oBAAoB,QAAQ,EAAE,SAAS,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEjI,QAAI,QAAQ,EAAE,cAAc;AACxB,iCAA2B,oBAAoB,QAAQ,EAAE,YAAY,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvI,QAAI,QAAQ,EAAE,cAAc;AACxB,yBAAmB,oBAAoB,QAAQ,EAAE,IAAI,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AACvH,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,2BAA2B,IAAI,8BAA8B;AAE1E,IAAM,sBAAN,cAAkCF,aAA4B;AAAA,EAC1D,cAAc;AACV,UAAM,8BAA8B;AAAA,MAChC;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAQ,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB;AAAA,MAClE;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAY,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAgB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACrF,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,OAAO,UAAU,GAAG,MAAM,sBAAsB;AAAA,MAChG,EAAE,IAAI,GAAG,MAAM,gBAAgB,MAAM,WAAW,OAAO,UAAU,GAAG,MAAM,sBAAsB;AAAA,MAChG,EAAE,IAAI,GAAG,MAAM,mBAAmB,MAAM,WAAW,OAAO,UAAU,GAAG,MAAM,yBAAyB;AAAA,MACtG;AAAA,QAAE,IAAI;AAAA,QAAG,MAAM;AAAA,QAAe,MAAM;AAAA,QAAU,QAAQ;AAAA,QAA2B,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC5G,EAAE,IAAI,GAAG,MAAM,WAAW,MAAM,WAAW,QAAQ,GAA2B,GAAG,MAAM,iBAAiB;AAAA,MACxG,EAAE,IAAI,GAAG,MAAM,UAAU,MAAM,WAAW,GAAG,MAAM,iBAAiB;AAAA,MACpE,EAAE,IAAI,IAAI,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,mBAAmB;AAAA,MACzE;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAoB,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MAC1F,EAAE,IAAI,IAAI,MAAM,YAAY,MAAM,OAAO,GAAG,GAAyB,GAAG;AAAA,QAAE,MAAM;AAAA,QAAU,GAAG;AAAA;AAAA,MAAwB,EAAE;AAAA,MACvH;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,MACjF,EAAE,IAAI,IAAI,MAAM,cAAc,MAAM,QAAQ,GAAG,MAAM,CAAC,yBAAyB,SAAS,EAAE;AAAA,MAC1F,EAAE,IAAI,IAAI,MAAM,YAAY,MAAM,WAAW,GAAG,MAAM,SAAS;AAAA,MAC/D;AAAA,QAAE,IAAI;AAAA,QAAI,MAAM;AAAA,QAAW,MAAM;AAAA,QAAU,KAAK;AAAA,QAAM,GAAG;AAAA;AAAA,MAAwB;AAAA,IACrF,CAAC;AAAA,EACL;AAAA,EACA,OAAO,OAAwD;AAC3D,UAAM,UAAU,WAAW,OAAO,OAAQ,KAAK,gBAAkB;AACjE,YAAQ,OAAO;AACf,YAAQ,SAAS,EAAE,WAAW,OAAU;AACxC,YAAQ,aAAa,CAAC;AACtB,YAAQ,UAAU,CAAC;AACnB,YAAQ,WAAW,CAAC;AACpB,YAAQ,YAAY;AACpB,QAAI,UAAU;AACV,MAAAC,wBAAuC,MAAM,SAAS,KAAK;AAC/D,WAAO;AAAA,EACX;AAAA,EACA,mBAAmB,QAAuB,QAAgB,SAA4B,QAAyC;AAC3H,QAAI,UAAU,UAAU,KAAK,OAAO,GAAG,MAAM,OAAO,MAAM;AAC1D,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb;AAAA,QAAuB;AACnB,kBAAQ,OAAO,OAAO,OAAO;AAC7B;AAAA,QACJ;AAAA,QAAoC;AAChC,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACJ;AAAA,QAAwC;AACpC,kBAAQ,cAAc,OAAO,OAAO;AACpC;AAAA,QACJ;AAAA,QAA0D;AACtD,kBAAQ,SAAS;AAAA,YACb,WAAW;AAAA,YACX,aAAa,sBAAsB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,OAAe,WAAW;AAAA,UAC/H;AACA;AAAA,QACJ;AAAA,QAA0D;AACtD,kBAAQ,SAAS;AAAA,YACb,WAAW;AAAA,YACX,aAAa,sBAAsB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,OAAe,WAAW;AAAA,UAC/H;AACA;AAAA,QACJ;AAAA,QAAgE;AAC5D,kBAAQ,SAAS;AAAA,YACb,WAAW;AAAA,YACX,gBAAgB,yBAAyB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAU,QAAQ,OAAe,cAAc;AAAA,UACxI;AACA;AAAA,QACJ;AAAA,QAAuC;AACnC,kBAAQ,WAAW,KAAK,OAAO,OAAO,CAAC;AACvC;AAAA,QACJ;AAAA,QAAyD;AACrD,kBAAQ,QAAQ,KAAK,iBAAiB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,OAAO,CAAC;AAC1F;AAAA,QACJ;AAAA,QAA+C;AAC3C,kBAAQ,SAAS,iBAAiB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,MAAM;AACrG;AAAA,QACJ;AAAA,QAAmD;AAC/C,kBAAQ,WAAW,mBAAmB,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AAC3G;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,kBAAkB,OAAO,OAAO;AACxC;AAAA,QACJ;AAAA,QAAwC;AACpC,eAAK,gBAAgB,QAAQ,UAAU,QAAQ,OAAO;AACtD;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AAAA,QAA4C;AACxC,kBAAQ,YAAY,OAAO,MAAM;AACjC;AAAA,QACJ;AAAA,QAAkD;AAC9C,kBAAQ,WAAW,SAAS,mBAAmB,QAAQ,OAAO,OAAO,GAAG,SAAS,QAAQ,QAAQ;AACjG;AAAA,QACJ;AAAA,QAAmC;AAC/B,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACJ;AACI,cAAI,IAAI,QAAQ;AAChB,cAAI,MAAM;AACN,kBAAM,IAAI,WAAW,MAAM,iBAAiB,OAAO,eAAe,QAAQ,SAAS,KAAK,QAAQ,EAAE;AACtG,cAAI,IAAI,OAAO,KAAK,QAAQ;AAC5B,cAAI,MAAM;AACN,aAAC,MAAM,OAAOC,qBAAoB,SAAS,GAAG,KAAK,UAAU,SAAS,SAAS,UAAU,CAAC;AAAA,MACtG;AAAA,IACJ;AACA,WAAO;AAAA,EACX;AAAA,EACQ,gBAAgB,KAAiC,QAAuB,SAAkC;AAC9G,QAAI,MAAM,OAAO,OAAO,GAAG,MAAM,OAAO,MAAM,KAAK,KAAmD;AACtG,WAAO,OAAO,MAAM,KAAK;AACrB,UAAI,CAAC,SAAS,QAAQ,IAAI,OAAO,IAAI;AACrC,cAAQ,SAAS;AAAA,QACb,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ,KAAK;AACD,gBAAM,OAAO,OAAO;AACpB;AAAA,QACJ;AAAS,gBAAM,IAAI,WAAW,MAAM,iEAAiE;AAAA,MACzG;AAAA,IACJ;AACA,QAAI,OAAO,EAAE,IAAI,OAAO;AAAA,EAC5B;AAAA,EACA,oBAAoB,SAAyB,QAAuB,SAA4C;AAE5G,QAAI,QAAQ,SAAS;AACjB,aAAO,IAAI,GAAGC,UAAS,eAAe,EAAE,OAAO,QAAQ,IAAI;AAE/D,QAAI,QAAQ,aAAa;AACrB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,QAAQ;AAEnE,QAAI,QAAQ,gBAAgB;AACxB,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW;AAEtE,QAAI,QAAQ,OAAO,cAAc;AAC7B,4BAAsB,oBAAoB,QAAQ,OAAO,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,QAAI,QAAQ,OAAO,cAAc;AAC7B,4BAAsB,oBAAoB,QAAQ,OAAO,aAAa,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAExI,QAAI,QAAQ,OAAO,cAAc;AAC7B,+BAAyB,oBAAoB,QAAQ,OAAO,gBAAgB,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE9I,aAAS,IAAI,GAAG,IAAI,QAAQ,WAAW,QAAQ;AAC3C,aAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,WAAW,CAAC,CAAC;AAExE,aAAS,IAAI,GAAG,IAAI,QAAQ,QAAQ,QAAQ;AACxC,uBAAiB,oBAAoB,QAAQ,QAAQ,CAAC,GAAG,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE3H,QAAI,QAAQ;AACR,uBAAiB,oBAAoB,QAAQ,QAAQ,OAAO,IAAI,GAAGA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAEvH,QAAI,QAAQ;AACR,yBAAmB,oBAAoB,QAAQ,UAAU,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAE5H,QAAI,QAAQ,oBAAoB;AAC5B,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,eAAe;AAE3E,aAAS,KAAK,WAAW,OAAO,KAAK,QAAQ,QAAQ;AACjD,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,CAAC,EAAE,IAAI,GAAGA,UAAS,eAAe,EAAE,OAAO,QAAQ,SAAS,CAAC,CAAC,EAAE,KAAK;AAEjK,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AAEnE,QAAI,QAAQ,cAAc;AACtB,aAAO,IAAI,IAAIA,UAAS,MAAM,EAAE,MAAM,QAAQ,SAAS;AAE3D,QAAI,QAAQ;AACR,eAAS,oBAAoB,QAAQ,UAAU,OAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,KAAK,GAAG,OAAO,EAAE,KAAK;AAElH,QAAI,QAAQ,YAAY;AACpB,aAAO,IAAI,IAAIA,UAAS,eAAe,EAAE,OAAO,QAAQ,OAAO;AACnE,QAAI,IAAI,QAAQ;AAChB,QAAI,MAAM;AACN,OAAC,KAAK,OAAOD,qBAAoB,UAAU,GAAG,KAAK,UAAU,SAAS,MAAM;AAChF,WAAO;AAAA,EACX;AACJ;AAIO,IAAM,iBAAiB,IAAI,oBAAoB;","names":["WireType","UnknownFieldHandler","reflectionMergePartial","MessageType","WireType","UnknownFieldHandler","reflectionMergePartial","MessageType","SchemaRegistry_Encoding","DictionaryLayout_Type","EndpointIngestionFormat","Method","SimpleColumnType","IntType","FloatType","PrimitiveTypes","LifeCycle","MessageType","reflectionMergePartial","UnknownFieldHandler","WireType"]}